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
End-to-End-Testtool
1) testRigor
testRigor ist ein Branchenführer, wenn es um End-to-End-Tests geht. Erstellen Sie nahtlos No-Code-Tests für Web-UI, native und hybride mobile Apps, mobile Browser und API. Testen Sie E-Mails und SMS, testen Sie heruntergeladene XLS-, DOC-, PDF- usw.-Dateien mit Leichtigkeit.
Merkmale:
- Schreiben Sie No-Code-Tests in einfachem Englisch.
- Web-, Mobil- und API-Abdeckung in einem Test. Plattform- und browserübergreifende Unterstützung.
- Erstellen Sie Tests 15-mal schneller im Vergleich zu Selenium.
- Reduzieren Sie die Testwartung um bis zu 99.5 %.
- testRigor ist sicher und SOC 2 Typ 2-konform.
- Integrationen mit CI/CD und Testfallmanagement.
- Führen Sie Tausende von Tests durch und erhalten Sie Ergebnisse in weniger als 1000 Minuten.
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
- 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.