{"id":1852,"date":"2014-05-09T19:49:25","date_gmt":"2014-05-09T17:49:25","guid":{"rendered":"https:\/\/erlebe-software.de\/?p=1852"},"modified":"2023-01-12T09:33:05","modified_gmt":"2023-01-12T08:33:05","slug":"einsatz-von-abap-unit-zur-steigerung-der-entwicklungsqualitaet-teil-ii","status":"publish","type":"post","link":"https:\/\/erlebe-software.de\/abap-und-co\/einsatz-von-abap-unit-zur-steigerung-der-entwicklungsqualitaet-teil-ii\/","title":{"rendered":"Einsatz von ABAP Unit zur Steigerung der Entwicklungsqualit\u00e4t \u2013 Teil 2"},"content":{"rendered":"\n

Im Rahmen einer Artikelserie erscheinen unter dem Thema Einsatz von ABAP Unit<\/a><\/strong> drei Beiträge zum effizienten Unit-Testing von ABAP-Entwicklungen.<\/p>\n

Der erste bereits erschienene Artikel zeigt grundlegende Möglichkeiten zum Einsatz von ABAP Unit für Reports und Klassen. Dieser zweite Artikel geht auf Best Practices ein und erläutert, wie Unit Tests im ABAP Umfeld am besten eingesetzt werden können. Der dritte Artikel geht auf weitere Tools ein, die im Rahmen von Unit-Testing unterstützen.<\/p>\n

<\/p>\n

Webinar: Wie Sie Ihre SAP-Systemlandschaft optimal auf S\/4HANA vorbereiten<\/a><\/h3><\/div><\/div>
\"Beitragsbild-Wie<\/div>
\n\t\t\t\tIn diesem Webinar erfahren Sie, welche Technologien der SAP f\u00fcr der Umstieg auf S\/4HANA wirklich wichtig sind und wie Sie das volle Potenzial von S\/4HANA aussch\u00f6pfen.\t\t\t<\/div>
Jetzt anmelden<\/a><\/div><\/div><\/div><\/div>\n\n

Design von ABAP Unit-Tests<\/h2>\n

Unit-Testfälle sollten so definiert werden, dass sie wirklich nur eine Einheit (unit) testen. Diese Einheit hat dabei genau eine Funktion. Alle Einheiten gemeinsam bilden dann den Test des Systems ab (nicht zu verwechseln mit einem Systemtest oder einem Integrationstest). Die einzelnen Tests müssen voneinander unabhängig sein, ebenso die Reihenfolge der Ausführung. Um diese Punkte zu gewährleisten, stellt das ABAP Unit Framework mehrere Hilfsmethoden zur Verfügung:<\/p>\n

\n\n\n\n\n\n
setup<\/td>\nDiese Methode wird vom ABAP Unit Framework vor jeder Testmethode aufgerufen. Hier können also beispielsweise Objekte aufgebaut werden.<\/td>\n<\/tr>\n
class_setup<\/td>\nDas Pendant zu setup, welches jedoch nur einmal bei Aufruf der Testklasse ausgeführt wird.<\/td>\n<\/tr>\n
teardown<\/td>\nDiese Methode wird vom ABAP Unit Framework nachjeder Testmethode aufgerufen. Hier können also beispielsweise Objekte wieder abgebaut werden.<\/td>\n<\/tr>\n
class_teardown<\/td>\nDas Pendant zu teardown, welches jedoch nur einmal bei Aufruf der Testklasse ausgeführt wird.<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div>\n

Organisation von ABAP Unit-Tests<\/h2>\n

Neben dem Aufbau von Unit-Tests muss natürlich auch geklärt werden, was denn nun genau getestet werden soll. Ein wichtiges Stichwort dazu ist die Testfallanzahl: Je nach Funktion ist eine vollständige Überprüfung der Definitions- und Wertebereiche (Importparameter und Returnparameter) verpflichtend oder einfach zu viel. Dementsprechend sollten über den Bereichen Äquivalenzklassen gebildet werden, um das Verhalten einer Funktion direkt für alle Vertreter einer solchen Klasse zu testen. Vor allem Negativtestfälle und Grenzfälle (man geht davon aus, dass Fehler zu den Grenzen der Äquivalenzklassen wandern) sind zu testen.<\/p>\n

Empfehlungen für den effektiven Praxiseinsatz von ABAP Unit<\/h2>\n