Was ist Explorative Testing?

Exploratives Testen ist eine Methode des Softwaretestens, bei der Lernen, Testdesign und Testausführung gleichzeitig stattfinden. Wie der Name schon sagt, steht bei dieser Testmethode die Erkundung von Software im Vordergrund. Es erfolgt ohne vorgegebene Skripte und basiert vollständig auf den Erfahrungen und Fähigkeiten der Tester.

Exploratives Testen ist ein wichtiger Bestandteil des manuellen Testens und geht über die Grenzen des skriptgesteuerten Testens hinaus.

Einleitung

Exploratives Testen ist eine Methode des Softwaretestens, bei der Lernen, Testdesign und Testausführung gleichzeitig stattfinden. Wie der Name schon sagt, steht bei dieser Testmethode die Erkundung von Software im Vordergrund. Es erfolgt ohne vorgegebene Skripte und basiert vollständig auf den Erfahrungen und Fähigkeiten der Tester.

Exploratives Testen ist ein wichtiger Bestandteil des manuellen Testens und geht über die Grenzen des skriptgesteuerten Testens hinaus.

Die Geschichte des explorativen Testens

Obwohl exploratives Testen schon länger existierte, wurde es 1984 von Cem Kaner formell in die Welt des Softwaretestens eingeführt.

Kaner prägte den Begriff und definierte ihn wie folgt:

„Exploratives Testen ist ein Teststil, der die persönliche Freiheit und Verantwortung des einzelnen Testers betont, um die Qualität seiner Arbeit ständig zu optimieren. Dabei werden lernbezogene Aktivitäten im Zusammenhang mit dem Testen, das Testdesign, die Testausführung und die Interpretation der Testergebnisse als gegenseitig unterstützende Aktivitäten betrachtet, die während des gesamten Projekts parallel verlaufen.“

Wann und warum sollten Sie exploratives Testen verwenden?

Exploratives Testen ist besonders nützlich, um ungewöhnliche und schwer zu findende Randfälle zu entdecken. Es kann Fehler aufdecken, die andere Testtechniken möglicherweise übersehen oder schwieriger zu finden sind.

Es gibt den Testern mehr Freiheit und hebt die verschiedenen Einschränkungen von Skript-Tests bei der Fehlersuche auf.

In den frühen Phasen der Softwareentwicklung, wenn sich der Code schnell ändert, kann exploratives Testen sehr effektiv sein. Die gewonnenen Erkenntnisse können in späteren Phasen für die Erstellung von Testskripten wertvoll sein.

Beispiel: Es kann Ihnen helfen, Automatisierungstests zu erstellen, indem es Ihnen Einblicke darin gibt, welche Testfälle automatisiert werden sollten.

Außerdem hilft exploratives Testen dabei:

  • die Einschränkungen von Skript-Testfällen zu überwinden,
  • spezifische Funktionen weiter zu erkunden und
  • sicherzustellen, dass keine Randfälle übersehen werden, die zu kritischen Fehlern führen können.
Es ist besonders nützlich für das Testen neuer Funktionen, die in einer Anwendung oder Website eingeführt werden. Durch exploratives Testen basieren die Tests auf Ihren Erfahrungen und Sie können so die Funktionsweise der neuen Funktionen kennenlernen.

Exploratives Testen kann auch dann eingesetzt werden, wenn Sie unter Zeitdruck stehen und Ihrem Kunden schnell Feedback geben müssen.

Exploratives Testen vs. skriptgesteuertes Testen

Es gibt viele Unterschiede zwischen explorativem Testen und skriptgesteuertem Testen:

Skriptgesteuertes TestenExploratives TestenTestfälle können leicht auf die ursprünglichen Anforderungen und Spezifikationen zurückgeführt werden, um die Testabdeckung zu demonstrieren. | Testfälle sind nicht gut dokumentiert. Es gibt keine klare und messbare Testabdeckung.
Die Tests lassen sich einfach reproduzieren. | Die Tests lassen sich schwer reproduzieren.
Das Feedback ist langsamer. | Das Feedback ist schneller.
Die Tester folgen vorgegebenen Schritten und Regeln. | Die Tester können Tests während der Ausführung anpassen.
Alle Tests werden im Voraus entworfen und geprüft. | Tests können nicht im Voraus entworfen und geprüft werden.
Die Testabdeckung lässt sich leicht verwalten. | Die Testabdeckung ist schwer zu verwalten.
Kann automatisiert werden. | Kann nicht automatisiert werden.

Vorteile und Nachteile des explorativen Testens

Vorteile:

  • Hilft bei der Erkennung von Benutzerfreundlichkeitsproblemen und UI-Problemen.
  • Projektverantwortliche erhalten Einblicke, die mit anderen Testtechniken nicht möglich waren.
  • Kann bei knappen Zeitvorgaben mehr erreichen als strukturiertes Testen.
  • Nur geringe Vorbereitung erforderlich.
  • Beschleunigt die Fehlererkennung.
  • Entdeckt Randfälle, die in zukünftigen Tests verwendet werden können.

Nachteile:

  • Schwierig zu dokumentieren.
  • Hohes Risiko, wichtige Fehler zu übersehen.
  • Kann leicht vom Testen der geplanten Funktion abweichen.
  • Eingeschränkt durch die Fähigkeiten und Erfahrungen der Tester.
  • Es ist schwierig zu bestimmen, welche Tests bereits ausgeführt wurden.

Das Beste aus explorativem Testen herausholen

Trotz der Vorteile des explorativen Testens - schnellere Fehlerfindung, Erkennung von Randfällen, kürzere Vorbereitungszeit als beim skriptgesteuerten Testen - sollten Sie nicht nur auf exploratives Testen setzen.

Um den größten Nutzen aus Ihren Softwaretestbemühungen zu ziehen, ist es am besten, diese Testmethode mit anderen Methoden des Softwaretestens zu kombinieren. Jede Testmethode hat ihre eigenen Vorteile, die während des gesamten Projektzyklus nützlich sein können.

Exploratives Testen ist definitiv eine davon.

Wenn Sie mehr darüber erfahren möchten und andere Arten von Softwaretestservices kennenlernen möchten - nehmen Sie Kontakt mit uns auf! Wir freuen uns darauf, von Ihnen zu hören und Ihr Projekt mit Ihnen zu besprechen. Entdecken Sie, warum wir einer der besten Anbieter für QA-Dienstleistungen sind!