ABAP Unit

ABAP Unit is the xUnit adoption for the ABAP language. ABAP Unit is directly embedded into the ABAP development environment and into the ABAP runtime environment.

In ABAP Unit tests are test methods in dedicated test classes. A test class may contain several test methods. The optional methods SETUP and TEARDOWN offer the possibility to manage the context of the unit tests. Usually test classes are local classes within the program under tests. The domain code and the test code share this way the same life cycle and are always in sync. The test code can exercise the domain code of the program but not vice versa. This restriction is checked by ABAP runtime system and ensures the pattern "no test code in productive code".

Test execution for single programs is possible from within the editors. Newer versions of ABAP Unit (>= SAP_BASIS 7.02) offer an integration with coverage metrics and a report to schedule automatic test execution with mail notification. ABAP Unit offers no feature to define test suites programmatically. Mass runs for entire packages can be executed with the Code Inspector integration only.