Automatisiertes vs. manuelles Testen
Ihre Mitarbeiter investieren viel Energie in die Testphasen der Projekte?
Im Schnitt schätzen die IT Verantwortlichen deutscher Unternehmen, die SAP im Einsatz haben, dass sie rund 30% des Budgets für das Testen von Projekten und immerhin 20% im laufenden Betrieb investieren. Aufgrund der hohen Taktrate an IT Projekten, sind die Fachkräfte sehr stark in den Testprozess eingebunden. Die meisten Unternehmen haben ihren Testprozess bereits mit Unit Tests, Integration Tests, User Acceptance Tests und Regression Tests zur Exzellenz getrieben.
Getreu dem Motto “Alles was automatisiert werden kann, wird automatisiert.” könnte sich hier eine massive Änderung ergeben. Die Idealvorstellung: Die ABAP Development Abteilung hat die Entwicklung im System abgeschlossen und Sie können mit einem Knopfdruck sowohl die Anforderungen validieren, als auch Nebenwirkungen und Seiteneffekte ausschließen. Lassen Sie uns doch mal schauen, was davon bereits möglich ist.
Lösungen für automatisiertes Testen können Sie unterstützen
ABAP Unit ist das Framework von SAP für Unit Tests, d.h. Modultests für einzelne separate Entwicklungsobjekte. Die Tests beschränken sich allerdings auf die einzelnen Module und können manuell oder automatisch geprüft werden. Daraus folgt, dass ABAP Unit Tests eine Testautomatisierung für die Entwicklertests bedeutet. Lesen Sie dazu auch den Blogbeitrag von Felix Tissen: Warum ABAP Unit Tests den Testaufwand verringern.
Für komplexere Testziele (z.B. Integration Tests) bietet SAP selbst das Extended Computer Aided Test Tool (eCATT) an, welches im Gegensatz zu den ABAP Unit Test Framework für Funktionstests entwickelt wurde. Das Tool eCATT bietet eine breite Masse an Möglichkeiten, kann aber vor allem zur GUI-Testautomatisierung eingesetzt werden.
In der Kurzfassung beschrieben, können sämtliche Interaktionen in der SAP GUI mit dem Rekorder aufgezeichnet und damit Testskripte erstellt werden, die im Anschluss automatisch geprüft werden können. Sie können sich somit ganze Testbatterien für Ihre Prozesse aufbauen, die stets die Korrektheit Ihrer Prozesse validieren können.
Automatisierte Testverfahren haben ihre Grenzen
Natürlich können Sie nicht jeden Testfall oder -bereich automatisieren, wie zum Beispiel den tatsächlichen Druck eines Rechnungsformulars auf dem Drucker. Außerdem ist mit Sicherheit der Invest proportional zu der Komplexität Ihrer Prozesse und daher zu Beginn der Implementierung von automatisierten Testverfahren entsprechend hoch. Einigen Quellen zufolge soll sich dieser Invest aber bereits nach dem 3. Durchlauf im Vergleich zu den Kosten für die manuellen Tests gerechnet haben.
Meine These: Automatisierte Tests werden in Zukunft unterstützen, aber werden manuelle Tests nicht vollständig ersetzen. Was denken Sie? Könnten Sie durch den Einsatz von automatisiertem Testen Ressourcen sparen, bzw. Ihre Mitarbeiter wieder mehr in ihren “Kernkompetenzen” arbeiten lassen?