3 SZENARIEN FÜR EINE ERFOLGREICHE TESTAUTOMATISIERUNG

20. Januar 2021 – Kennen Sie das auch aus Ihren früheren Projekten: Ihre manuellen Tests benötigen sehr viel Zeit und ihre Tester leiden unter der Last der Tests? Wollen Sie es jetzt besser machen? Hierbei kann Automatisierung helfen. 
Doch wann lohnt es sich wirklich? Wir zeigen es Ihnen!

Ein Vorteil von Testautomatisierung ist, dass die Anzahl an Tests, die manuell ausgeführt werden müssen, verringert wird. Damit sparen Sie nicht nur Ressourcen und Zeit sondern auch Geld. Außerdem erreichen Sie eine höhere Qualität durch höhere Testabdeckung.  Doch was bedeutet das in der Praxis? In folgenden Szenarien erklären wir Ihnen in welchen Use Case eine Testautomatisierung hilfreich ist.

SZENARIO 1: TEST-DRIVEN-DEVELOPMENT-ANSATZ

Ein klassisches Szenario ist ein Implementierungsprojekt mit Test Driven Development. Hier bietet sich die Testautomatisierung nicht nur an sondern drängt sich förmlich auf. Durch diesen Arbeitsmodus müssen die Tests bereits feststehen (und geschrieben sein), bevor wir mit der eigentlichen Implementierung beginnen. Danach startet die Implementierung und nach jeder Iteration werden die vordefinierten Tests durchgeführt. Es kann hier insbesondere bei komplexen Problemstellungen zu vielen Iterationen kommen. Damit die Testaufwände hier nicht explodieren, benötigen wir ein Automatisierungsframework. 

SZENARIO 2: REGRESSIONSTEST

Regressionstest sind Testfälle, die durchgeführt werden müssen, wenn eine Änderung an der Software vorgenommen wurde. Somit stellen wir sicher, dass die bereits existierenden Funktionen nicht beschädigt wurden. Dies ist insbesondere wichtig, wenn Prozesse verwoben sind und/oder aufeinander aufbauen. Hier ist eine Automatisierung dann sinnvoll, wenn sich die Grundfunktionalitäten der Software nicht mehr verändert. Somit müssen die Regressionstestfälle nicht jedes Mal neu geschrieben werden. Insbesondere vordefinierte fachliche Tests können den Fachbereich deutlich entlasten.

Damit sich die Testautomatisierung auch lohnt, kommt es auch auf die Anzahl und Wiederholung der Regressionstestfälle an. Es lohnt sich hier eine Kosten-Nutzen-Rechnung aufzustellen. Solange jedoch kein Grundriss der Software steht, macht eine Automatisierung keinen Sinn. In dem Fall fällt sonst der Anpassungsaufwand bei den Testfällen zu hoch aus. 

 

(SZENARIO 3: AUFBAU TECHNISCHER INFRASTRUKTUR

Die technische Ressourcen sind verfügbar, doch eine Implementierungen ist noch nicht geplant ( da z.B. die Anforderungen noch nicht bekannt sind). In so einem Fall lohnt es sich die Ressourcen zu verwenden, um eine technische Infrastruktur zu erstellen. Dazu gehört auch eine Testautomatisierung. Aus unseren eigenen Erfahrungen kann eine einfache Testautomatisierung auf Unit-Testebene schon in einem Monat geschrieben sein. Dies kann die kommenden Testaufwände erheblich entlasten.

Neben dem Verfügbarkeitsaspekt ist es ebenfalls hilfreich, wenn die Systemstruktur eine klar definierte Eingangs- und Ausgangsschicht aufweist. Das Automatisierungsframework kann genau diese anzielen.

 

KOMPLEXES SYSTEM

Testautomatisierung führt zu einer Zeit- und Ressourcenverschwendung bei einem komplexen System mit vielen Datenablagen, die sich von Zeit zu Zeit noch verändern. Somit ist eine klare Definition der  Eingangs- und Ausgangsschichten nicht mehr möglich und das Framework muss ständig angepasst werden. Dies führt letztendlich zu einem Zeitverlust, da auch das Framework selbst bei Änderungen getestet werden muss. Ist das System nicht von außen zugänglich ist in den meisten Fällen eine Testautomatisierung nicht möglich. Dieses sollte nämlich separiert sein, um externe Einflüsse zu vermeiden.

FAZIT

Wie Sie sehen ist eine Testautomatisierung in vielen Szenarien empfehlenswert. Sie erhöht nicht nur die Qualität Ihres Produktes, sondern auch die Zufriedenheit Ihrer Tester. Die Testautomatisierung ist aber kein Allheilmittel, das alle Testprobleme löst. Ebenso passt nicht jedes Testautomatisierungswerkzeug zu jeder Infrastruktur und jedem Projekt. Wir empfehlen bei jedem Projektstart genau zu analysieren und zu definieren, welches der Szenarien bzw. ob ein Mix dieser zutrifft. Gerne unterstützen wir Sie sowohl bei der Entscheidung, ob eine Automatisierung sinnvoll ist und ob Sie vollständig oder teilweise automatisieren sollten. Ebenso beraten wir Sie auch bei der Auswahl eines passenden Testautomatisierungsframeworks und dem Aufsetzen des Testautomatisierungsprojektes.

SprEchen Sie mIT

sonja müller!