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.

END-zu-END-Tests

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.

END-zu-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.

Besuchen Sie testRigor >>

Wie erstelle ich End-to-End-Testfälle?

Erstellen Sie End-to-End-Testfälle
End-to-End-Testfälle

Das End-to-End-Testdesign-Framework besteht aus drei Teilen

  1. Erstellen Sie Benutzerfunktionen
  2. Baubedingungen
  3. 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)

  1. Melden Sie sich beim Bankensystem an
  2. Überprüfen Sie den Saldo auf dem Konto
  3. Überweisen Sie einen Betrag von Ihrem Konto auf ein anderes Bankkonto (3rdParteisubsystem)
  4. Überprüfen Sie Ihren aktuellen Kontostand
  5. 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.