# 4. Zustandsbasierte Testfälle -> falsche Aufgabe # Zur Aufgabe ![](https://i.imgur.com/yFcKk9g.png) *Zum Vorgehen: Überblick über Situation schaffen, alle Pfade zu jedem Zustand aufschreiben* |**S1**| | |**S2**| | |------|---------------|---|------|---------------| |a |Robustheitstest| |a |Konformanztest | |b |S2 | |b |Robustheitstest| |c |Robustheitstest| |c |S3 & S4 | |d |Robustheitstest| |d |Robustheitstest| | | | | | | |**S3**| | |**S4**| | |a |Robustheitstest| |a |Konformanztest | |b |S1 | |b |S2 | |c |Robustheitstest| |c |Robustheitstest| |d |S4 | |d |Robustheitstest| ### a) Geben Sie für diesen Automaten den Übergangsbaum für den Zustands-Konformanztests an *Verhalten konform des Zustandsdiagramms Aufzählung aller Verläufe, die ohne Schleife direkt zum Ziel führen* 1. b->a 2. b->c->a - b->c->b -> ignorierbar, weil kürzerer Weg zu S1 vorhanden - b->c->d -> ignorierbar, weil kürzerer Weg zu S4 vorhanden ### b) Geben Sie für diesen Automaten den Übergangsbaum für den Zustands-Robustheitstests an *Nicht konformante Benutzung des Zustandsdiagramms Aufzählung aller Verläufe, die nicht definiert sind* 1. a 2. c 3. b->b 4. b->d - b->c->a (S3) ignorierbar weil über S4 akzeptiert - b->c->b -> ignorierbar, weil kürzerer Weg zu S1 vorhanden 5. b->c->c (S3) - b->c->d -> ignorierbar, weil kürzerer Weg zu S4 vorhanden - b->c->c (S4) ignorierbar, weil über S3 schon getestet 6. b->c->d 7. d ### c) Geben Sie auf der Basis der vorigen Teilaufgaben eine möglichst kleine Anzahl von Testfällen als Folge von Ereignissen und Zuständen an, die eine vollständige, also 100%ige Zustandsüberdeckung zu erreichen *Möglichst wenige Pfade, um jeden Zustand erreicht zu haben?!? Aufzählung möglichst weniger Pfade, wobei nach allen Tests jeder Zustand mind 1 Mal erreicht werden sollte -> Sprich S1, S2, S3, S4* ### d) Geben Sie auf der Basis der vorigen Teilaufgaben eine möglichst kleine Anzahl von Testfällen an, die zusätzlich benötigt werden um eine 100%ige Zustandsübergangs-Überdeckung zu erreichen *Möglichst wenige Tests, um alle gültigen Pfade mindestens 1 mal abgelaufen zu sein?!? Aufzählung aller Pfade, so dass jeder Pfad(transition) mindestens 1 mal gegangen wurde -> Sprich alle Pfeile in der Zeichnung ++ -> Siehe b)* > Dennis Eickholt: Aufgabe verlangt wohl keine "Negativtests", weil keine Couverage diesbezüglich getestst werden ### e) Prüfen Sie Ihre Vorschläge unter c) und d) jeweils durch entsprechende Tests in den Testumgebungen und stellen Sie die Ergebnisse mit der jeweils 100%igen Überdeckung vor. *siehe Entwicklungsumgebung*