Automatische Ableitung von Testzielen
Ziel:
Methode zur automatischen Ableitung von Testzielen aus strukturierten Spezifikationen in natürlicher Sprache:
Beschreibung:
Diese Methode befasst sich mit funktionalem Testen und der automatischen Ableitung von Testzielen
aus funktionalen Anforderungen, die als Use Cases beschrieben sind. Ein von einem Use Case
abgeleitetes Testziel beschreibt, was getestet werden muss, um die korrekte und vollständige
Implementierung des Use Case zu verifizieren.
Man beachte, dass ein Testziel sich von einem Testfall dadurch unterscheidet, dass ein Testziel nicht ausgeführt werden kann, außer wenn es mit Testwerten und erwarteten Resultaten angereichert wird.
Bei dieser Methode besteht der erste Schritt darin, funktionale Anforderungen (die möglicherweise in natürlicher Sprache vorliegen) als Use Cases zu erfassen. Das zugrunde liegende Metamodell für den Use Case ist die „Navigational development“- Technik. Das resultierende Use-Case-Template enthält die primären und alternativen / falschen Verhaltenssequenzen, die der Use Case aufweisen muss. Diese Sequenzen lassen sich in Form strukturierter natürlicher Sprache erfassen.
Danach wird der Use Case dafür verwendet, ein Verhaltensmodell zu erstellen, d.h. ein Aktivitätsdiagramm. In der Hauptsequenz des Use Case bildet jeder Schritt eine Aktivität des Aktivitätsdiagramms mit einem Übergang zwischen zwei aufeinander folgenden Aktivitäten. Jeder alternative oder falsche Schritt in der entsprechenden alternativen / falschen Sequenz bildet (1) eine Aktivität, wenn eine Aktion durchgeführt wird, oder (2) einen Entscheidungsknoten : je nachdem, ob der Schritt eine Vorbedingung oder eine Invariante ist, kann der Entscheidungsknoten entweder vor oder nach der Durchführung der Aktion hinzugefügt werden.
Wenn das Verhaltensmodell erstellt ist, werden die Testziele algorithmisch aus dem Verhaltensmodell, d.h. aus dem Aktivitätsdiagramm, abgeleitet. Die Testziele sind im Grunde genommen Pfade durch das Modell, was sich entweder als Aktivitätsdiagramme selbst oder als normaler Text ausdrücken lässt. Da die Generierung von Testzielen im Prinzip auf dem Durchlaufen von Graphen beruht, können mehrere Abdeckungskriterien verwendet werden, um Sequenzen zu generieren, die Testziele darstellen. Zum Beispiel kann die Abdeckung aller Knoten (oder Kanten) ein solches Abdeckungskriterium sein.
