mindsquare.de durchsuchen

ABAP Unit

Sie brauchen einen ABAP Unit Berater und/oder möchten, dass wir Ihnen unser Angebot in diesem Umfeld vorstellen?

Ingo Biermann
29. August 2017

Die ABAP Unit ist ein Teil der Testlandschaft für ABAP-Programme, mit denen Modultests implementiert und diese sowohl manuell als auch automatisch durchgeführt werden können.

Eigenschaften

Bei ABAP-Modultests handelt es sich um Methoden für speziell designierte ABAP-Klassen, mit denen das Verhalten von einzelnen Komponenten überprüft werden kann. Jede Komponente weist dabei genau eine Funktionalität auf, die mittels Unit-Tests auf das gewünschte Verhalten geprüft werden kann. Die Testmethoden laufen als Skripte ab, mit denen der getestete Code ausführt und die Ergebnisse automatisch auswertet und protokolliert werden. Im Gegensatz zu manuellen Tests durch den Benutzer können automatisierte Unit-Tests in wenigen Sekunden durchlaufen.

Entwicklungsfunktionen der ABAP Unit

Für die Programmierung von Modultests ist kein Erlernen zusätzlicher Testskriptsprachen notwendig. Ebenfalls wird kein Knowhow über zusätzliche Oberflächenbedienung vorausgesetzt, da die Testentwicklung ausschließlich in der ABAP-Entwicklungsumgebung abläuft.

Mit dem ABAP Unit Wizard lassen sich Testklassen für Klassen (Class-Pools) und Funktionsgruppen generieren. Für andere Programmobjekte können Testklassen manuell anlegt werden.  Damit die Beziehung zwischen dem Modultest und dem getesteten Code klar ist, werden ABAP-Modultestklassen in den getesteten Entwicklungsobjekten implementiert.

Beitragsbild-Wie Sie Ihre SAP-Systemlandschaft optimal auf S_4HANA vorbereiten
In diesem Webinar erfahren Sie, welche Technologien der SAP für der Umstieg auf S/4HANA wirklich wichtig sind und wie Sie das volle Potenzial von S/4HANA ausschöpfen.

Design und Organisation von ABAP Unit-Tests

Unit-Testfälle sollten so definiert werden, dass nur eine Einheit pro Fall getestet wird und diese Einheit genau eine Funktion erfüllt. Alle Einheiten zusammen bilden dann den Test des Systems ab. Die einzelnen Tests sowie die Reihenfolge der Ausführung müssen dabei unabhängig voneinander sein.

Bei der Frage, was getestet werden soll, spielt die Testfallzahl eine wichtige Rolle, da je nach Funktion eine vollständige Überprüfung der Definitions- und Wertebereiche (Importparameter und Returnparameter) verpflichtend oder einfach zu viel ist. Daher empfehlt es sich, Äquivalenzklassen zu bilden, die das Verhalten einer Funktion direkt für alle Vertreter einer solchen Klasse testen.

Empfehlungen: effektiver Praxiseinsatz von ABAP Units

Lernen Sie an einem Tag, wie Sie die Entwicklungsqualität in Ihren Projekten nachhaltig verbessern können. Durch den Ansatz des Test Driven Development (TDD) mittels des ABAP Unit Frameworks in ABAP OO lernen Sie, Unit-Tests von Beginn an in Ihren Entwicklungsprozess zu integrieren. Über das ABAP Test Cockpit (ATC) in Eclipse oder der SAP Gui ist es Ihnen jederzeit möglich, eine Überprüfung Ihrer Entwicklungen durchzuführen.

In Reports werden Testfälle allerdings nicht automatisch generiert, sondern müssen manuell angelegt werden. Von daher empfiehlt es sich, ein Code Template zu entwickeln, dass sich bei Bedarf kopieren lässt.

Bei Komponenten die Datenverbindungen aufbauen ist es ratsam, den tatsächlichen Datenbankaufruf auszulagern und nur das Anfordern der Datenverbindung zu testen.

Private Methoden einer Klasse werden eigentlich nicht getestet, da diese Hilfsklassen für public-Methoden sind und eher die Schnittstelle von den public-Methoden getestet werden sollte. Die verändert sich im Gegensatz zum Verhalten von Hilfsmethoden seltener und muss dementsprechend seltener angepasst werden

Grenzen von ABAP Units

Unit-Testfälle sind für die modularisierte Funktionsüberprüfung von einzelnen Entwicklungseinheiten geeignet. Bei größeren Projekten und Kontexten wie z.B. der Entwicklung von Oberflächen und nebenläufigen Systemen, kommen ABAP Unit-Testfälle schnell an ihre Grenzen. Hierfür sind ganze Systemtests vorgesehen, die nicht nur aus der Gesamtheit einzelner Unit-Testfälle bestehen sollten.

ABAP

E-Book: Die besten Blogbeiträge zum Thema „ABAP”

In unserem E-Book erfahren Sie alles Wissenswerte über ABAP, die proprietäre Programmiersprache von SAP.

Best Practices

Sie suchen Lösungen für ein konkretes Problem mit ABAP Units? Wie wollen von Best Practices in der ABAP Entwicklung und im Einsatz von ABAP Units profitieren?

mindsquare ist ein Technologieunternehmen, das sich auf die Beratung und Entwicklung im SAP-Umfeld spezialisiert hat. Unsere SAP Berater haben langjährige Erfahrung in der Umsetzung von ABAP-Kundenprojekten und Best Practices für verschiedene Entwicklungsszenarien etabliert. Wir beraten Sie gerne zu Ihrer individuellen Herausforderung und zeigen Ihnen optimale Lösungswege auf. Vereinbaren Sie ein unverbindliches Beratungsgespräch und bringen Sie Ihre SAP-Prozesse auf ein neues Level.

Verwandte Know-Hows

Web Dynpro Java (WD4J) ist neben Web Dynpro for ABAP (WD4A) eine mögliche Programmiersprache für die Erstellung von Web Dynpros. Mit Web Dynpro können Weboberflächen schnell und kostengünstig gestaltet werden.
SAP Business Process Management ist eine Software von SAP zur Modellierung von Geschäftsprozessen auf der NetWeaver Plattform. Sie stellt das Gegenstück bzw. eine Alternative zum SAP Business Workflow als integrativem […]
Das Composite Application Framework (CAF) bietet eine Entwicklungs- und Laufzeitumgebung für SOA-konforme SAP Composite Applications.

Passende Angebote zum Thema

Ein wichtiger Schritt in Richtung des neuen SAP Frameworks for Digital Business ist die in-memory Datenbank SAP HANA. Für bestehende SAP Kunden ist vor allem wichtig: Wie schaffe ich das […]
Sie haben die Ideen und Wünsche – wir haben die richtigen Umsetzer. Mit unseren SAP Entwicklern setzen wir Ihr SAP Entwicklungsprojekt in die Tat um und sind Ihr professioneller Dienstleister […]
Wir helfen Kunden mit unserem Security Check/Security Audit dabei, Schwachstellen im Berechtigungskonzept aufzudecken sowie den allgemeinen sicherheitstechnischen Stand Ihres Systems zu prüfen und liefern dazu konkrete Lösungsvorschläge. Dadurch können Sie […]
Kontakt aufnehmen
Ansprechpartner
Laura Feldkamp mindsquare Kundenservice
Laura Feldkamp Kundenservice