Was ist END-To-END-Testen? E2E-Beispiel
End-to-End-Tests
End-to-End-Tests ist eine Softwaretestmethode, die die gesamte Software von Anfang bis Ende sowie ihre Integration mit externen Schnittstellen validiert. Der Zweck von End-to-End-Tests besteht darin, die gesamte Software auf Abhรคngigkeiten, Datenintegritรคt und Kommunikation mit anderen Systemen, Schnittstellen und Datenbanken zu testen, um ein vollstรคndiges produktionsรคhnliches Szenario durchzufรผhren.
Zusammen mit dem Softwaresystem validiert es auch die Stapel-/Datenverarbeitung von anderen vor-/nachgelagerten Systemen. Daher der Name "Ende zu Ende". End-to-End-Tests werden normalerweise nach funktionalen und funktionalen Tests durchgefรผhrt Systemtest. Es nutzt tatsรคchliche produktionsรคhnliche Daten und eine Testumgebung, um Echtzeiteinstellungen zu simulieren. E2E-Testing wird auch genannt Kettentest.
Warum End-to-End-Tests?
End-to-End-Tests รผberprรผft den gesamten Systemfluss und erhรถht das Vertrauen durch die Erkennung von Problemen und deren Verbesserung Testabdeckung von Subsystemen. Moderne Softwaresysteme sind komplex und mit mehreren Subsystemen verbunden, die sich von aktuellen Systemen unterscheiden kรถnnen. Das gesamte System kann durch den Ausfall eines Subsystems zusammenbrechen, was ein groรes Risiko darstellt, das durch End-to-End-Tests vermieden werden kann.
End-to-End-Testprozess
Das folgende Diagramm gibt einen รberblick รผber den End-to-End-Testprozess.
Die Hauptaktivitรคten im Zusammenhang mit End-to-End-Tests sind:
- Untersuchung der End-to-End-Testanforderungen
- Einrichtung der Testumgebung und Hardware-/Softwareanforderungen
- Beschreiben Sie alle Prozesse des Systems und seiner Subsysteme.
- Description von Rollen und Verantwortlichkeiten fรผr alle Systeme
- Testmethodik und Standards
- End-to-End-Anforderungsverfolgung und Entwurf von Testfรคllen
- Eingabe- und Ausgabedaten fรผr jedes System
Wie erstelle ich End-to-End-Testfรคlle?

Das End-to-End-Testdesign-Framework besteht aus drei Teilen
- Erstellen Sie Benutzerfunktionen
- Baubedingungen
- Erstellen Sie Testfรคlle
Schauen wir sie uns im Detail an: โ
Erstellen Sie Benutzerfunktionen
Folgende Aktivitรคten sollten als Teil des Build-Benutzerfunktionen durchgefรผhrt werden:
- Listen Sie die Funktionen des Systems und der miteinander verbundenen Komponenten auf
- Listen Sie die Eingabedaten, Aktionen und Ausgabedaten fรผr jedes Feature oder jede Funktion auf
- Identifizieren Sie die Beziehungen zwischen den Funktionen
- Bestimmen Sie, ob die Funktion wiederverwendbar oder unabhรคngig sein kann
Stellen Sie sich zum Beispiel ein Szenario vor, in dem Sie sich bei Ihrem Bankkonto anmelden und etwas Geld von einer anderen Bank auf ein anderes Konto รผberweisen (3rdParteisubsystem)
- Melden Sie sich beim Bankensystem an
- รberprรผfen Sie den Saldo auf dem Konto
- รberweisen Sie einen Betrag von Ihrem Konto auf ein anderes Bankkonto (3rdParteisubsystem)
- รberprรผfen Sie Ihren aktuellen Kontostand
- Abmelden von der Anwendung
Erstellen Sie Bedingungen basierend auf der Benutzerfunktion
Folgende Aktivitรคten werden im Rahmen der Baubedingungen durchgefรผhrt:
- Erstellen einer Reihe von Bedingungen fรผr jede definierte Benutzerfunktion
- Zu den Bedingungen gehรถren Sequenz-, Timing- und Datenbedingungen
Zum Beispiel -รberprรผfung weiterer Bedingungen wie
Login-Seite
- Ungรผltiger Benutzername und Passwort
- รberprรผfung mit gรผltigem Benutzernamen und Passwort
- รberprรผfung der Passwortstรคrke
- รberprรผfung von Fehlermeldungen
Kontostand
- รberprรผfen Sie nach 24 Stunden den aktuellen Kontostand. (Wenn die รberweisung an eine andere Bank gesendet wird)
- รberprรผfen Sie, ob die Fehlermeldung angezeigt wird, wenn der รberweisungsbetrag grรถรer als der aktuelle Saldobetrag ist
Erstellen Sie ein Testszenario
Aufbau der Testszenario fรผr die definierte Benutzerfunktion
In diesem Fall steht:
- Melden Sie sich im System an
- รberprรผfung des Bankguthabens
- รberweisen Sie den Bankguthabenbetrag
Erstellen Sie mehrere Testfรคlle
Erstellen Sie einen oder mehrere Testfรคlle fรผr jedes definierte Szenario. Testfรคlle kรถnnen jede Bedingung als einen einzelnen Testfall umfassen.
Metriken fรผr End-to-End-Tests
Im Folgenden sind einige der zahlreichen Metriken aufgefรผhrt, die als Beispiel fรผr End-to-End-Tests verwendet werden:
- Status der Testfallvorbereitung: Es zeigt den Fortschritt der Testfallvorbereitung im Vergleich zum Plan an
- Wรถchentlicher Testfortschritt โ Bietet wรถchentliche Details zum Prozentsatz abgeschlossener Tests โ fehlgeschlagene, nicht ausgefรผhrte und im Vergleich zur geplanten Ausfรผhrung ausgefรผhrte Tests.
- Mรคngelstatus und Details- Es gibt den Prozentsatz offener und geschlossener Mรคngel pro Woche an. Auรerdem wird die wรถchentliche Mรคngelverteilung basierend auf Schweregrad und Prioritรคt angezeigt.
- Umgebungsverfรผgbarkeit โGesamtzahl der โaktivenโ Stunden / Gesamtzahl der pro Tag fรผr Tests eingeplanten Stunden
End-to-End-Tests vs. Systemtests
| End-to-End-Tests | Systemtest |
|---|---|
| Validiert das Softwaresystem sowie miteinander verbundene Subsysteme | Validiert nur das Softwaresystem gemรคร den Anforderungsspezifikationen. |
| Es prรผft den kompletten End-to-End-Prozessablauf. | Es รผberprรผft Systemfunktionen und -merkmale. |
| Alle Schnittstellen und Backend-Systeme werden zum Testen berรผcksichtigt | Fรผr die Tests werden funktionale und nichtfunktionale Tests berรผcksichtigt |
| Es wird ausgefรผhrt, sobald der Systemtest abgeschlossen ist. | Es wird danach ausgefรผhrt Integrationstests. |
| Beim End-to-End-Testing werden externe Schnittstellen รผberprรผft, deren Automatisierung komplex sein kann. Daher Manuelle Prรผfung Ist bevorzugt. | Fรผr Systemtests kรถnnen sowohl manuelle als auch automatisierte Tests durchgefรผhrt werden |
Fazit
In der Softwareentwicklung ist End-to-End-Testen der Prozess der Verifizierung eines Softwaresystems zusammen mit seinen Subsystemen. Die grรถรte Herausforderung bei diesen Tests besteht darin, รผber ausreichende Kenntnisse des gesamten Systems sowie eines miteinander verbundenen Subsystems zu verfรผgen.

.png)
.png)