Testfälle sind im Voraus vorbereitete Szenarien mit klar definierten Schritten, Eingabewerten und erwarteten Ergebnissen. Exploratives Testen wird vor Ort durchgeführt: Der Tester generiert Prüfungen während der Einarbeitung in das Produkt, basierend auf seiner Expertise und Intuition. Historisch dominierten zunächst Testfälle, aber mit der Komplexität der Systeme und dem Anstieg der manuellen Prüfungen begann das explorative Testen, die formalen Ansätze zu ergänzen.
Das blinde Folgen nur eines Testansatzes schränkt die Einfallsreichtum des Testers ein und kann dazu führen, dass das Produkt mit Bugs bleibt, die in den Fällen nicht beschrieben sind.
Beide Ansätze ausgewogen nutzen: Testfälle – für Regressionstest und kritische Funktionalitäten, explorativ – für neue, noch nicht vollständig formalisierte Bereiche und bei kurzen Zeitrahmen.
Wichtige Merkmale:
Kann man nur Testfälle für eine 100% Abdeckung verwenden?
Nein. Selbst der detaillierteste Testfall deckt nicht das unerwartete Verhalten des Benutzers oder ungewöhnliche Bugs ab.
Erfordert exploratives Testen eine Vorbereitungszeit?
Ja. Man muss sich mit der Funktionalität auseinandersetzen, die Anforderungen studieren und die Geschäftslogik verstehen, bevor man das Produkt frei erforscht.
Ist ein Bug-Report nach explorativem Testen obligatorisch?
Ja. Jeder gefundene Defekt muss detailliert dokumentiert werden, wie ein Bug aus einem formalen Szenario, sonst ist es schwierig, ihn zu reproduzieren und zu beheben.
Das Team hat das Release nur mit formalen Testfällen abgedeckt. Ein Tester führte diese strikt nach Anleitung aus, ohne "verknüpfte" Fälle zu überprüfen, wodurch ein Bug übersehen wurde, der bei einer bestimmten Reihenfolge von Aktionen auftrat, die im Voraus nicht vorgesehen war.
Vorteile:
Nachteile:
Der Tester reservierte nach dem Durchlaufen der Schlüssel-Testfälle eine Stunde für exploratives Testen und fand einen Bug, der nur auftritt, wenn die Zeit auf dem Gerät während der Ausführung der Anwendung geändert wird.
Vorteile:
Nachteile: