Dies hat viele Gründe, u.a sind dies:
- Das Testobjekt erlaubt nur manuellen Zugriff auf die Funktionalität.
- Die Initialkosten einer Testautomatisierung sind zu hoch.
- Die Änderungszyklen der Software sind zu kurz, bzw. ist das Testobjekt noch nicht ausgereift genug, was zu hohen Wartungsaufwänden einer Testautomatisierung führt.
- Es herrscht Zeitdruck für schnelle Testergebnisse.
- Es gibt zu wenig Fachkompetenz, um eine Testautomatisierung aufzusetzen.
- Es ist keine Abschätzung der Wiederholung von Testläufen möglich, so dass Initial- und Wartungsaufwände der Testautomatisierung nicht in Bezug zur Kosteneinsparung bei der Durchführung von Tests gesetzt werden können.
Wird nun manuell getestet, kann dies entweder gesteuert durch Testfallspezifikationen oder explorativ erfolgen. Dem explorativen Testen hängen dabei Mythen an, die es auf den ersten Blick als Lösung erscheinen lassen, die Einschränkungen des manuellen Testens bzgl. Kosten und Zeit aufzuheben.
In weiterer Folge werden einige genannt und richtig gestellt.
a) Exploratives Testen spart Kosten
Dies ist nur bedingt richtig. In vielen Fällen werden die Kosten nur verlagert. Es werden zwar Kosten bei der Spezifikation eingespart, es fallen aber zusätzliche Kosten bei der Ermittlung des Sollverhaltens und dem Berichtswesen an. Fehler, die gefunden werden, müssen nachverfolgbar sein. In schrittbasierten Tests kann dies effizient pro Schritt erfolgen, im explorativen Testen muss dies ggfs. frei formuliert werden. Liegen die Anforderungen nicht gut dokumentiert vor und hat der Tester nicht bereits ein tiefes Domänenverständnis, so muss er dieses Wissen mühsam zuvor zusammensuchen.
b) Exploratives Testen spart Zeit
Auch dies muss nicht immer der Fall sein. Ähnlich wie beim Kostenaspekt, müssen in manchen Umfeldern zunächst mühsam Informationen gesammelt werden. Soll der Test nachvollziehbar sein, müssen die Schritte protokolliert werden (hier können allerdings fallweise Werkzeuge unterstützen).
c) Exploratives Testen ist tiefer und variantenreicher
Dies bedingt ein sehr tiefes Domänenverständnis des Testers. Ist dies nicht vorhanden, kann man in diesem Zusammenhang eigentlich nur von reinen Zufallstreffern reden aber nicht von einem systematischen Ansatz.
Fazit:
Exploratives Testen kann durchaus als Ansatz dienen, schnell zu Testergebnissen zu kommen. Es hängt wesentlich von dem Wissen des Testers und der Güte der Anforderungsdokumentation ab oder ist einfach nur Zufall. Man muss daher vorsichtig sein und sollte nicht verallgemeinern. Es darf auch nicht vergessen werden, dass dies zudem oft mit Kürzen von Testbreite und Tiefe verbunden ist, was zu höheren Produkt-Projektrisiken führen kann.