Hintergrund des Themas:
Manuelles Testen basierte ursprünglich auf der Gewohnheit, nur die Szenarien zu testen, die den Anforderungen und dem erwarteten Verhalten des Systems entsprechen (sogenannte "positive Szenarien"). Im Laufe der Zeit wurde klar, dass Software oft genau unter unerwarteten oder fehlerhaften Bedingungen ausfällt, mit denen nicht gerechnet wurde.
Problem:
Nur positive Szenarien garantieren nicht die Stabilität und Zuverlässigkeit der Anwendung. Wenn negative Szenarien (z. B. falsche Eingaben, unzulässige Aktionen) nicht getestet werden, können schwerwiegende Fehler übersehen werden, die bei echten Benutzern auftreten können.
Lösung:
Beide Arten von Tests durchführen:
Schlüsselmerkmale:
Kann man negatives Testen vernachlässigen, wenn das Produkt alle positiven Szenarien besteht?
Nein. Fehler, die bei negativen Szenarien auftreten, haben oft kritische Auswirkungen auf die Sicherheit und Zuverlässigkeit des Produkts.
Müssen negative Tests unbedingt zu Programmfehlern führen?
Nein, ein gut gestaltetes Programm sollte bei negativen Szenarien fehlerhafte Daten korrekt verarbeiten, nicht "abstürzen" und kein inkorrektes Ergebnis liefern.
Ist es genauso wichtig, positive und negative Tests für alle Teile des Systems zu schreiben?
Nein, manchmal kann für nicht kritische oder etablierte Teile des Systems das Volumen negativer Szenarien reduziert werden, aber für verwundbare und kritische Stellen ist es notwendig.
Im Unternehmen wurde bei der Testung des Registrierungsformulars auf der Website nur auf korrekte Werte (gültige E-Mail, Passwörter usw.) getestet, ohne fehlerhafte Varianten zu berücksichtigen.
Vorteile:
Nachteile:
Der Tester fügte Tests für ungültige E-Mail-Adressen, zu kurze und zu lange Passwörter sowie spezielle Zeichen in alle Felder hinzu.
Vorteile:
Nachteile: