OpenKeyWord
Version: 426, Datum:
|
Die Frage nach Schleifen bzw. nach Kontrollstrukturen wird immer wieder gestellt und ist auch immer wieder Thema in OKW-Schulungen. Es gibt mehrere Gründe, warum OKW keine Kontrollstrukturen anbietet.
Die OKW-Schlüsselwörter wurden so konzipiert, dass ein Fachtester funktional-fachliche Testfälle aufschreiben kann. Dabei war es wichtig, das keine neue Programmiersprache entsteht, da ein Fachtester nicht zwingend Programmierkenntnisse haben muss.
Daher besteht ein Testfall OKW ledeglich aus einer Abfolge (Sequenz) von Schlüsselwörter. Mehr nicht. Alle schritte sind für eine Korrekte Ausführung zwingend notwendig. In nächsten Abschnitt Grund 2: Kein "wenn und aber" in konkreten Testfällen wird darauf eingegangen wie udn warum das funktioniert.
Ein zweites erklärtes Ziel der OKW-Schlüsselwörter ist die Vereinfachung der Testautomatisierung: Testfälle, die von einem Fachtester erstellt worden sind, sollten sofort automatisieren werden können. D.h. keine Übersetzung von Prosa-Testfällen in eine Skripts- oder Programmierprache, wie z.B. c#.
Während der Entwicklung der von OKW wurde deutlich, dass für die Beschreibung eines funktional/fachlichen Testfalls keine Kontrollstrukturen benötigt werden! Bei automatisierten Testfällen handelt es sich immer um konkrete Testfälle. D.h. Testdaten sind Zwingend vorgegeben.
Man kann Funktional-fachliche Testfälle mit einem Theaterstücke vergleichen:
Sollte sich während der Vorführung eine Abweichung zum Drehbuch ergeben, dann muss das Theaterstück sofort als nicht bestanden beendet werden.
Ein Weiterspielen würde nur noch Chaos verursachen und der undefinierte Zustand würde die Zeit für andere Vorführungen rauben. Kurz gesagt: Es gibt kein „Wenn und Aber“ in einem Testfall. Punkt!
An dieser Stelle sei zunächst auf F.I.R.S.T. verwiesen. Siehe
Die in F.I.R.S.T. zusammengefassten Testfall-Eigenschaften gelten prinzipiell für alle Teststufen.
Nach F.I.R.S.T. sollte jeder Testfall seinen Fokus auf einen Aspekt richten. Schlägt ein Testfall fehl, dann muss ohne größere oder aufwändige Analyse die betroffene Funktionalität erkennbar sein.
Deshalb ist es auch vorteilhafter eine Schleife um den Testfall statt in den Testfall zu legen (= ein Testfall mit mehreren unterschiedlichen Prüfungen).
So sind die Testfälle voneinander isoliert und es müssen nicht tonnen von Logdaten analysiert werden um die betroffene Komponnete zu
Ergänzend kann noch gesagen werden:
Nach meiner Ansicht gibt es zwei wesentliche Gründe, warum Kontrollstrukturen gewünscht werden: