Hat eine Klasse Unit Tests?

Für interne Audits oder Auswertungen oder auch einfach aus Interesse könnte man prüfen wollen, ob eine Klasse Unit Tests enthält oder nicht.

Folgendes kleine Programm gibt alle lokalen Testklassen und die dazugehörigen Unit Tests in einer Liste aus.

Coding

PARAMETERS p_clsnam TYPE seoclsname DEFAULT 'CL_AUNIT_PROG_INFO'.


START-OF-SELECTION.

  DATA(hlp) = NEW cl_aunit_factory( ).
  DATA(res) = hlp->get_test_class_handles(
    EXPORTING
      obj_type = 'CLAS'
      obj_name = CONV #( p_clsnam ) ).

  LOOP AT res INTO DATA(cls).
    WRITE: / cls->get_class_name( ) COLOR COL_GROUP.
    LOOP AT cls->get_test_methods( ) INTO DATA(tmt).
      WRITE: /3 tmt.
    ENDLOOP.
  ENDLOOP.

Ausgabe

Für die Klasse CL_AUNIT_PROG_INFO wird die folgende Liste erzeugt, die Auskunft über die enthaltenen Unit Tests gibt:

Lokale Testklassen und deren Unit Tests
Enno Wulff