Testpyramide und End-to-End-Tests
Kurz: Die Testpyramide empfiehlt viele schnelle Unit-Tests, weniger Integrationstests und wenige langsame End-to-End-Tests (E2E).
Genauer: Unit-Tests prüfen kleine Einheiten und laufen in Millisekunden. Integrationstests prüfen das Zusammenspiel (Anwendung und Datenbank). E2E-Tests steuern die fertige Anwendung wie ein Mensch im Browser (mit Werkzeugen wie Playwright oder Cypress) und finden Fehler, die Unit-Tests übersehen, sind aber langsamer und anfälliger.
Im Detail
- Unten: Viele Unit-Tests: schnell, stabil, genau.
- Mitte: Integrationstests für Datenbank, Schnittstellen, Server Actions.
- Oben: Wenige E2E-Tests für die wichtigsten Nutzerwege (Anmelden, Kaufen, Hochladen).
- Anti-Muster „Eistüte”: Fast nur E2E-Tests: langsam, instabil.
- Stabile E2E-Tests: Auf sichtbare Texte und Rollen warten, nicht auf feste Wartezeiten.
- Zufällige Fehler („flaky”): Nicht überspringen, sondern Ursache suchen.
Siehe auch: Unit-Test (Modultest), Code-Abdeckung (Coverage), Qualitätssicherung und Tests