Ratgeber

Automatisierter SAP-Test spart Geld

21.02.2011
Von Eric Jochum

Automatisiertes Testen: Methodisch Fehler finden

Automatisiertes Testen hilft dagegen, den Testaufwand deutlich zu reduzieren und Kosten zu sparen. Dabei zeichnet eine Software im Vorfeld der eigentlichen Überprüfungen Testverläufe wie eine Art Rekorder auf und spielt sie über Nacht durch. Dieses Verfahren wird als GUI-Testautomatisierung (GUI = Graphical User Interface) bezeichnet. Es kommt in eigenständigen Projekten zum Einsatz, die geplant, spezifiziert, umgesetzt, protokolliert und ausgewertet werden. Die Rekorder-Funktion (Capture) zeichnet Mausbewegungen, Mausklicks oder Tastatureingaben auf jeder beliebigen Bildschirmoberfläche auf. Diese "Aufnahmen" kann der Tester jederzeit wiedergeben (Replay), so dass er bei einem erneuten Testdurchlauf nicht selbst am PC-Arbeitsplatz anwesend sein muss.

Die GUI-Testautomatisierung kann mehrere Testskripte nacheinander durchlaufen lassen. Falls sie während der Skriptwiedergabe an einer Stelle nicht fortfahren kann, weil sich ein Fenster nicht öffnet oder eine Fehlermeldung auftritt, stoppt der Durchlauf. Ein Screenshot wird erzeugt, der Testfall gespeichert und automatisch eine Fehlermeldung ausgegeben. Der Dateiname des Screenshots beinhaltet die Zeilennummer des Skripts, in der der Fehler aufgetreten ist. Damit kann der Tester jederzeit nachvollziehen, in welcher Zeile des Programms der Test beziehungsweise die Wiedergabe abgebrochen wurde. Mittels des Capture-Replay-Verfahrens werden die Testfälle aufgezeichnet. Dadurch wird das Sollergebnis festgelegt. Mit dem systematischen Testdaten-Management ist die Wiederholung der Testfälle reproduzierbar. Das ist wichtiger, um Fehler sinnvoll beheben zu können.

Darauf kommt es an

Die Herausforderung beim automatisierten Testen besteht in der Planung und Vorbereitung. Aufgrund der Komplexität kann die IT nicht alle Anwendungsszenarien automatisieren. Wichtig ist es deshalb, die richtige Auswahl zu treffen. Wählt man zu komplexe Testfälle, ist der Aufwand für die Wartung der Automatisierung so groß, dass sie mehr Zeit und Geld kostet als die manuelle Alternative.

Die GUI-Testautomatisierung erfolgt am besten am Ende eines Projekts, da sich bis dahin oft noch Änderungen ergeben. Dann entfaltet sie ihr wahres Potenzial, indem auf Grundlage von Planungen neuer Releases eine weitere GUI-Testautomatisierung aufgesetzt werden kann. Die Vorteile des Verfahrens liegen insbesondere in der Möglichkeit von Regressionstests. Diese wiederholen alle oder einen Teil der Testfälle, um die Nebenwirkungen von Modifikationen in bereits getesteten Teilen der Software aufzuspüren. Zudem lassen sich Tests häufiger und schneller vornehmen. Eine höhere Zuverlässigkeit, reproduzierbare Ergebnisse und eine unbeaufsichtigte Testausführung ohne Benutzerinteraktion sind weitere positive Merkmale.