E2E-Tests bestätigen, dass integrierte Komponenten (wie Frontend, Backend, Datenbanken und Services von Drittanbietern) reibungslos zusammenarbeiten. Außerdem ist es bestrebt, reale Benutzerszenarien einzubeziehen.
Es gibt jetzt eine ganze Reihe von Software-Testtypen. Sie können bestimmte Bereiche einer gesamten Anwendung testen, indem Sie auf den jeweiligen Aspekt, der von Interesse ist, heranzoomen, bis hin zum Komponententest auf der kleinsten inkrementellen Ebene. Vielleicht möchten Sie testen, wie gut die Software verschiedene spezifische Funktionen ausführt oder wie ihre verschiedenen Komponenten zusammenpassen. In diesem Fall sollten Sie Functional Testing oder Integration Testing erkunden.
Angenommen, Ihr Ziel ist es, ein möglichst vollständiges Bild davon zu erhalten, wie eine Softwareanwendung funktioniert. Sie möchten die Anwendung in der Praxis beobachten – vom Start bis zum Ende – und feststellen, wie effizient sie ihre Subsysteme und die damit verbundenen Abhängigkeiten verwaltet.
Darüber hinaus möchten Sie möglicherweise auch einen allgemeinen Eindruck davon gewinnen, wie gut die Benutzeroberfläche (UI) funktioniert. Unabhängig davon, für welchen Ansatz zum Testen der Benutzeroberfläche Sie sich entscheiden, muss dieser die Leistung der Anwendung aus Sicht des Benutzers berücksichtigen.
E2E-Tests bieten ein umfassendes Framework, das einen vollständigen Überblick über das Verhalten der Anwendung ermöglicht und eine Bewertung der Qualität der User Experience (UX) ermöglicht.
Da E2E-Tests so anspruchsvoll sind, dass sie den gesamten Lebenszyklus der Anwendungsentwicklung abdecken, ist es nicht überraschend, dass E2E-Tests mehr Engagement, Ressourcen und Zeit erfordern.
Die E2E-Prüfung unterscheidet sich erheblich von einer „Blackbox“-Teststrategie, bei der der Betrieb auf eine „bestanden/nicht bestanden“-Bewertung reduziert wird. Diese Strategie bedeutet, dass wir nur herausfinden, ob die Anwendung wie abgerechnet funktioniert. Aus diesem Grund ist E2E nicht für jeden Zweck die ideale Wahl. Es handelt sich in der Regel um einen zeitaufwändigen Testprozess, der am besten in Situationen eingesetzt wird, in denen Tester wirklich eine Bewertung jeder einzelnen Stufe der App-Leistung benötigen.