Die folgende Testpyramide zeigt die Möglichkeiten und die ideale Struktur im Bereich Testing. Wir unterscheiden zwischen:
Unit-Tests testen einzelne Units / Klassen ab. Sie sind klein übersichtlich und performant. Sie bilden das Fundament der Pyramide.
Integrations-Tests sind sozusagen die Mittelklasse der Tests. Sie kommen ohne UI aus, testen aber die Business-Logik (die interne Funktionalität) ab.
System-Tests und E2E-Tests testen das Programm komplett aus der Benutzerperspektive. D.h. Sie werden an der Benutzeroberfläche (UI) ausgeführt. Diese Tests laufen meist lang (im Vergleich zu den anderen Test-Typen). Sie werden wenn möglich automatisiert, können aber auch manuell durchgeführt werden. Gerade in der Webentwicklung ist das Cross-Browser-Testing (UI) sehr wichtig.