Testgrundlagen

Problem

Ihre Rabattberechnung besteht ihre Tests. Kunden können die Kasse immer noch nicht abschließen, weil der Zahlungsdienst sein Antwortformat geändert hat. Durch das Testen eines korrekten Teils wird nicht festgestellt, dass das gesamte System funktioniert.

Lösung — Testen Sie unterschiedliche Verhaltensweisen in verschiedenen Bereichen

Wählen Sie den Test entsprechend der Frage, die Sie beantworten müssen: - Unit-Test: Berechnet diese Funktion den Rabatt für sich genommen korrekt? - Integrationstest: Kann die Bestellkomponente ihre Datenbank tatsächlich lesen und beschreiben? - Vertragstest: Erfüllt eine API weiterhin die Erwartungen ihrer Clients an Anfragen und Antworten? - End-to-End: Kann ein Kunde den Kauf durch den vollständigen Workflow abschließen? - Lasttest: Erreicht der Checkout seine Ziele unter realistischer erwarteter Last? - Stresstest: Was geschieht bei einer Last über der geplanten Kapazität, und wie erholt sich das System? - Fehlertest: Was geschieht, wenn eine Abhängigkeit in ein Timeout läuft oder ausfällt? Kontrollierte Fehlerexperimente haben klare Grenzen und einen Wiederherstellungsplan. Schnelle, gezielte Prüfungen ergänzen breitere Tests wichtiger Abläufe. Ein simuliertes Zahlungssystem ist hilfreich, kann aber vom echten Dienst abweichen. Bestandene Tests gelten für die geprüften Fälle und Bedingungen; sie belegen keine vollständige Fehlerfreiheit.
Kerngedanke: Verschiedene Tests beantworten unterschiedliche Fragen. Vertrauen entsteht durch nützliche Abdeckung von Verhalten, Interaktionen, Last und Ausfall.