Zustandsübergangstests mit Beispiel
⚡ Intelligente Zusammenfassung
State Transition Testing ist eine Black-Box-Technik, die überprüft, wie eine Anwendung bei veränderten Eingabebedingungen zwischen verschiedenen Zuständen wechselt. Dieses Tutorial erklärt die vier Diagrammbestandteile, den Unterschied zwischen Zustandsdiagrammen und -tabellen sowie durchführbare Beispiele für Geldautomaten und Logins für Tester.
Was ist ein Zustandsübergangstest?
Zustandsübergangstests Es handelt sich um eine Black-Box-Testmethode, bei der Änderungen der Eingabebedingungen Zustands- oder Ausgabeänderungen in der zu testenden Anwendung (AUT) bewirken. Sie hilft, das Verhalten einer Anwendung unter verschiedenen Eingabebedingungen zu analysieren, und Tester können positive und negative Eingabewerte bereitstellen, während sie das Systemverhalten aufzeichnen.
Es basiert auf dem Modell, auf dem das System und die Tests aufgebaut sind. Jedes System, bei dem für dieselbe Eingabe – abhängig vom vorherigen Zustand – eine andere Ausgabe erfolgt, ist ein endliches Zustandssystem. Die Zustandsübergangstesttechnik ist hilfreich, wenn Sie Folgendes benötigen: verschiedene Systemübergänge testen.
Wann sollte man Zustandsübergangstests verwenden?
- Wenn ein Tester die Anwendung für eine endliche Menge von Eingabewerten testet.
- Wenn der Tester eine Abfolge von Ereignissen testet, die in der zu testenden Anwendung (AUT) auftreten, kann das Verhalten der Anwendung für eine Abfolge von Eingabewerten überprüft werden.
- Wenn das zu testende System von Ereignissen oder Werten aus der Vergangenheit abhängt.
Wann man sich nicht auf Zustandsübergangstests verlassen sollte
- Wenn der Test nicht für sequentielle Eingabekombinationen durchgeführt wird.
- Wenn die Tests auf unterschiedliche Funktionalitäten abzielen, wie beispielsweise explorative Tests.
Vier Teile eines Zustandsübergangsdiagramms
Das Zustandsübergangsmodell besteht aus vier Hauptkomponenten, die im Folgenden beschrieben werden.
1) Staaten dass die Software erreichen könnte.
2) Übergang von einem Bundesstaat in einen anderen.
3) Ereignisse die einen Übergang auslösen, wie beispielsweise das Schließen einer Datei oder das Abheben von Geld.
4) Aktionen die aus einem Übergang resultieren, wie zum Beispiel eine Fehlermeldung oder die Auszahlung von Bargeld.
Zustandsübergangsdiagramm vs. Zustandsübergangstabelle
Es gibt zwei Hauptmethoden zur Darstellung oder Gestaltung von Zustandsübergängen: das Zustandsübergangsdiagramm und die Zustandsübergangstabelle.
| Aspekt | Zustandsübergangsdiagramm | Zustandsübergangstabelle |
|---|---|---|
| Auch genannt | Zustandsdiagramm / Grafik | Zustandstabelle |
| Vertretung | BoxEs stehen für Zustände, Pfeile für Übergänge. | Raster der Zustände (Zeilen) und Ereignisse (Spalten) |
| am besten geeignet zur Identifizierung | Gültige Übergänge | Ungültige Übergänge |
| Jede Zelle zeigt | - | Der Zustand, der nach dem Eintreten eines Ereignisses erreicht wird |
Wie man einen Zustandsübergang durchführt (Beispiele)
Beispiel 1: PIN-Sperre am Geldautomaten
Betrachten wir eine Funktion eines Geldautomatensystems, bei der das Konto gesperrt wird, wenn der Benutzer dreimal ein falsches Passwort eingibt.
In diesem System wird der Benutzer erfolgreich angemeldet, wenn er bei den ersten drei Versuchen ein gültiges Passwort eingibt. Gibt er beim ersten oder zweiten Versuch ein falsches Passwort ein, wird er zur erneuten Eingabe aufgefordert. Gibt er schließlich ein drittes Mal das falsche Passwort ein, wird sein Konto gesperrt.
Zustandsübergangsdiagramm (Beispiel 1)
Im Diagramm wechselt der Benutzer in den Status „Zugriff gewährt“, sobald er die korrekte PIN eingibt. Gibt er das falsche Passwort ein, versucht er es erneut. Beim dritten Fehlversuch wird das Konto gesperrt.
Zustandsübergangstabelle (Beispiel 1)
| Staat | Richtige PIN | Falsche PIN |
|---|---|---|
| S1) Starten | S5 | S2 |
| S2) 1. Versuch | S5 | S3 |
| S3) 2. Versuch | S5 | S4 |
| S4) 3. Versuch | S5 | S6 |
| S5) Zugriff gewährt | - | - |
| S6) Konto gesperrt | - | - |
In der Tabelle wechselt der Status zu S5 (Zugriff gewährt), sobald der Benutzer die korrekte PIN eingibt. Gibt der Benutzer ein falsches Passwort ein, wechselt er zum nächsten Status und erreicht nach dem dritten Fehlversuch den Status „Konto gesperrt“.
Beispiel 2: Anmeldung zur Flugreservierung
Im Anmeldebildschirm für die Flugreservierung müssen Sie den korrekten Agentennamen und das korrekte Passwort eingeben, um Zugriff zu erhalten. Flugreservierungsantrag.
Zustandsübergangsdiagramm
Die Anwendung erlaubt drei Versuche; gibt der Benutzer beim vierten Versuch das falsche Passwort ein, schließt das System die Anwendung automatisch.
Der Zustandsgraph hilft Ihnen, gültige Übergänge zu ermitteln, die getestet werden sollen. Das Testen mit dem richtigen und einem falschen Passwort ist obligatorisch. TestszenarienDer zweite, dritte oder vierte Anmeldeversuch könnte jeweils getestet werden. Mithilfe einer Zustandstabelle lassen sich ungültige Systemübergänge ermitteln.
In einer Zustandstabelle werden links alle gültigen Zustände und oben die zugehörigen Ereignisse aufgelistet. Jede Zelle zeigt den Zustand an, in den das System beim Eintreten des Ereignisses wechselt. Beispielsweise führt ein korrektes Passwort im Zustand S1 zu S6 (Zugriff gewährt); ein falsches Passwort beim ersten Versuch führt zu S3 (2. Versuch). Auf die gleiche Weise lassen sich alle anderen Zustände ermitteln.
Mit dieser Methode werden zwei ungültige Zustände hervorgehoben. Angenommen, Sie befinden sich im Zustand S6 (bereits angemeldet) und öffnen eine weitere Instanz der Flugreservierung, wobei Sie die Passwörter für denselben Agenten eingeben. Die Systemreaktion in einem solchen Szenario muss getestet werden.
Vor- und Nachteile der Zustandsübergangstechnik
| Vorteile | Nachteile |
|---|---|
| Bietet eine bildliche oder tabellarische Darstellung des Systemverhaltens, helping Der Tester deckt das System ab und versteht es effektiv. | Kann nicht immer angewendet werden – beispielsweise eignet es sich nicht für Systeme, die nicht endlich oder sequenziell sind. |
| Ermöglicht dem Tester die Überprüfung, ob alle Bedingungen erfüllt sind und die Ergebnisse erfasst werden. | Dies erfordert die Definition aller möglichen Zustände. Für kleine Systeme funktioniert dies, stößt aber bei größeren Systemen aufgrund des exponentiellen Anstiegs der Zustandsanzahl an seine Grenzen. |






