28.12.2013 Aufrufe

Zum modellbasierten funktionalen Test reaktiver Systeme

Zum modellbasierten funktionalen Test reaktiver Systeme

Zum modellbasierten funktionalen Test reaktiver Systeme

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

3. <strong>Test</strong>fallspezifikation<br />

Ein weiteres Anwendungsfeld existentieller Eigenschaften besteht in der Approximation<br />

universeller Eigenschaften durch existentielle Eigenschaften, die<br />

auf den Seiten 76 ff. diskutiert wird.<br />

Klassifikation <strong>Test</strong>fallspezifikationen – Formalisierungen und Operationalisierungen<br />

von <strong>Test</strong>zielen – lassen sich neben ad-hoc angegebenen grob in<br />

• funktionale,<br />

• strukturelle und<br />

• stochastische<br />

einteilen, aus denen ohne weitere Modifikationen mit dem in den folgenden<br />

Kapiteln beschriebenen <strong>Test</strong>fallgenerator <strong>Test</strong>fälle berechnet werden können.<br />

Funktionale <strong>Test</strong>fallspezifikationen basieren auf relevanten Anwendungsszenarien,<br />

die im Rahmen des Requirements Engineering oder der Qualitätssicherung<br />

identifiziert wurden. Strukturelle Spezifikationen basieren auf der syntaktischen<br />

Struktur eines Modells oder Programms. Beispiele sind die Abdeckung von<br />

Anweisungen oder von Transitionen. Stochastische Spezifikationen schließlich<br />

nutzen ein Modell, um zufällig (randomisiert gleichverteilt) oder anhand von<br />

Nutzungsprofilen <strong>Test</strong>fälle zu erzeugen. Auf strukturellen und randomisierten<br />

Kriterien basierende <strong>Test</strong>fallspezifikationen können im Unterschied zu <strong>funktionalen</strong><br />

automatisch erzeugt werden.<br />

Suchraumeinschränkung <strong>Test</strong>fallspezifikationen dienen auch der Einschränkung<br />

des Suchraums. Mengen von Szenarien in Form einer nichtdeterministischen<br />

endlichen erweiterten Zustandsmaschine (EFSM; eine FSM mit lokalen<br />

Variablen) können getestet werden, indem beispielsweise Kontrollzustandsüberdeckung<br />

auf dieser EFSM gefordert wird. Die Transitionen zwischen den Zuständen<br />

schränken dann die Menge aller Systemabläufe ein.<br />

3.2. Funktionale <strong>Test</strong>fallspezifikationen<br />

In diesem Abschnitt werden funktionale <strong>Test</strong>fallspezifikationen, d.h. Mengen<br />

explizit angegebener Szenarien, diskutiert. Dabei findet eine Konzentration auf<br />

modellbezogene <strong>Test</strong>fallspezifikationen statt, d.h. <strong>Test</strong>ziele wie beispielsweise<br />

Bytepermutationen auf APDU-Ebene im Fall der Chipkarte werden nicht betrachtet.<br />

Für solche <strong>Test</strong>s könnten auch Modelle verwendet werden. Ihre Codierung<br />

in der <strong>Test</strong>treiberumgebung erscheint allerdings vielversprechender: Auf<br />

Modellebene kommen APDUs gar nicht vor.<br />

3.2.1. <strong>Test</strong> von Szenarien<br />

Unter <strong>funktionalen</strong> <strong>Test</strong>zielen werden explizit in Anforderungsdokumenten spezifizierte<br />

Szenarien verstanden. 2 Diese werden dann in <strong>Test</strong>fallspezifikationen<br />

2 Im Extreme Programming und dem <strong>Test</strong>-Driven Development (Beck, 2003) übernehmen<br />

<strong>Test</strong>fälle die Rolle der (unvollständigen) Spezifikation (Pretschner u. a., 2003a).<br />

72

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!