Was ist erschöpfendes Testen?

Erschöpfende Tests, die auch als vollständige Tests bezeichnet werden, treten auf, wenn alle Tester in Ihrem Team erschöpft sind und wenn alle geplanten Tests ausgeführt wurden. Es ist eine Qualitätssicherungstesttechnik, bei der alle Szenarien oder Daten zum Testen getestet werden. Verständlicher ausgedrückt bedeutet erschöpfendes Testen, dass am Ende der Testphase keine unentdeckten Fehler auftreten. Das Testen von allem (allen Kombinationen von Eingaben und Voraussetzungen) ist nur in trivialen Fällen möglich. Als Tester sagen wir oft „Nun, ich habe einfach nie genug Zeit zum Testen“. Selbst wenn Sie alle Zeit auf dieser Welt hätten, hätten Sie immer noch nicht genug Zeit, um alle möglichen Eingabe- und Ausgabekombinationen zu testen.

Warum sind umfassende Tests unpraktisch und unmöglich?

Es ist nicht möglich, vollständige Tests oder erschöpfende Tests durchzuführen. Für die meisten Systeme ist es aus folgenden Gründen nahezu unmöglich:

  • Die Domäne der möglichen Eingaben eines Programms ist zu groß, um vollständig zum Testen eines Systems verwendet zu werden. Es gibt sowohl gültige als auch ungültige Eingaben.
  • Das Programm kann eine große Anzahl von Zuständen haben. Es kann zeitliche Einschränkungen für die Eingänge geben, dh eine Eingabe kann zu einem bestimmten Zeitpunkt gültig und zu anderen Zeiten ungültig sein. Ein Eingabewert, der gültig ist, aber nicht richtig zeitlich festgelegt ist, wird als unpassende Eingabe bezeichnet.
  • Die Eingabedomäne eines Systems kann sehr groß sein, um vollständig zum Testen eines Programms verwendet zu werden.
  • Die Designprobleme sind möglicherweise zu komplex, um sie vollständig zu testen. Das Design kann implizite Designentscheidungen und Annahmen enthalten haben. Beispielsweise kann ein Programmierer eine globale Variable oder eine statische Variable verwenden, um die Programmausführung zu steuern.
  • Es ist möglicherweise nicht möglich, alle möglichen Ausführungsumgebungen des Systems zu erstellen. Dies wird wichtiger, wenn das Verhalten des Softwaresystems von der realen Außenwelt wie Wetter, Temperatur, Höhe, Druck usw. abhängt.

Erschöpfende Testbeispiele

Beispiel 1:

ausführliches Testen IE-Optionen Beispiel
Die IE-Tools > Fenster Erweiterte Optionen

53 binäre Bedingungen
1 Bedingung mit 3 Optionen
1 Bedingung mit 4 Optionen
2^53 = 9,007,199,254,740,992
x 12
= 108.086.391.056.891.904 mögliche Kombinationen von Bedingungen

Bei einer Sekunde pro Testdurchführung:

108,086,391,056,891,904 / 360 = 300,239,975,158,033.067 stunden (12.509.998.964.918,04 Tage oder 34.273.969.766,9 Jahre), um alle möglichen Kombinationen zu testen.

Beispiel 2:

Nehmen wir eine E-Commerce-Site mit den folgenden Funktionen:

  • Login
  • Produkt auswählen
    • Produkt nach Farbe filtern
    • Produkt nach Preis filtern.
  • Kaufen Sie das Produkt (Zahlungsportal)

Auf der Grundlage von Risikokennzeichnungsparametern können Benutzer eine Matrix erstellen, die in den Testplan aufgenommen werden soll. Jeder Parameter kann bewertet werden, damit wir Bereiche mit hohem Risiko richtig identifizieren können.

  • Auswirkungen auf das Geschäft: 1-10
  • Ausfallwahrscheinlichkeit: 1-10
  • Regression: 1-5
  • Wiederherstellung: 1-5

Erstellen wir eine Matrix für das obige Beispiel:

Funktionalität Auswirkungen auf das Geschäft Ausfallwahrscheinlichkeit Regression Wiederherstellung
Anmelden 10 3 1 1=15
Wählen Sie ein Produkt mit Farbfilter 5 5 2 2=14
Wählen Sie ein Produkt mit Preisfilter 8 5 2 2=17
In den Warenkorb 10 8 3 4=25
Kaufen Sie die produkt 10 7 2 2=21

Gemäß der Punktzahl haben wir die Funktion „In den Warenkorb legen“ als vordersten Anwärter auf den „Bereich mit dem höchsten Risiko“, sodass wir jetzt die Tests priorisieren können. Wir können auch bestimmen, für welche Funktionalitäten das QS-Team einen nahezu vollständigen Test durchführen muss.
Das QA-Team kann den Risikominderungsplan optimieren, indem es sich die Ergebnisse ansieht

  • Ergebnisse 1-5: – Komponententests und Überprüfungen.
  • Noten 5-10:-Unit-Tests + Black-Box-Tests (Regression und Bereiche mit hohen geschäftlichen Auswirkungen)
  • Ergebnisse 10-15: -Typische Testtypen mit begrenzter Tiefe.
  • Noten 15-25: -Typische Testtypen mit Tiefe in bestimmten Testtypen.
  • Scores 25-30: – Bereiche mit hohem Risiko. Vollständige Abdeckung und eingehende Tests für alle Testtypen.

Gemäß der oben genannten Methode sollten Gebiete mit einer Punktzahl über 25 als extrem Hochrisikogebiet betrachtet werden, und es muss ein nahezu erschöpfender Test durchgeführt werden.Für das obige Beispiel sollte „In den Warenkorb legen“ eingehende Tests für alle Testtypen implementieren, und es sollten umfassende Tests durchgeführt werden.