13.07.2015 Aufrufe

Strategien zur Testfallgenerierung aus SysML Modellen

Strategien zur Testfallgenerierung aus SysML Modellen

Strategien zur Testfallgenerierung aus SysML Modellen

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.

2 Betrachtung verschiedener <strong>Testfallgenerierung</strong>sstrategienNeben verschiedenen statistischen Ansätzen (z.B. [WT94], [WPT95]) sind auch deterministischeMethoden zum Erzeugen von Testfällen <strong>aus</strong> zustandsbasierten <strong>Modellen</strong> weitverbreitet. Hierbei kommen meist Formen von Überdeckungsalgorithmen zum Einsatz. In[Bin00] werden mögliche Überdeckungskriterien für Statecharts umfassend behandelt.Briand und Labiche präsentieren in [BL02] eine Methodik um <strong>aus</strong> verschiedenen UML-Modellartefakten Systemtestfälle zu generieren. Aktivitätsdiagramme werden benutzt umsequentielle Abhängigkeiten zwischen Use-Cases darzustellen. Sequenzdiagramme beschreibenAbläufe und Systemzustandsänderungen als Folge der <strong>aus</strong>geführten Use-Cases.In den Arbeiten [BNBM05] und [BB05] werden Ereignis-Sequenzgraphen (Event SequenceGraphs) für die Modellierung interaktiver Systeme verwendet. Hier handelt essich wie bei Briand und Labiche um einen Ansatz der auf eine explizite Modellierung derZustände des Systems verzichtet. Vielmehr wird das System durch eine Menge von Graphenbeschrieben, die alle möglichen Kombinationen von externen Ereignissen und dendazugehörigen Systemantworten beschreiben. Ein Vergleich der beiden Herangehensweisenin Form einer Fallstudie findet sich in [BBLS06].3 LösungsansatzIn dem hier beschriebenen Ansatz wird, wie in [BL02] und den Arbeiten von Belli et al.,eine explizite Definition von Zuständen vermieden. Da zum Zeitpunkt der Modellierungoftmals nichts über die interne Implementierung und die resultierenden internen Zuständedes zu testenden Systems bekannt ist (Blackbox-Test), würde ein zustandsbasiertes Modellvor allem auf Annahmen des Testingenieurs beruhen, bzw. nur dazu dienen das nachaußen sichtbare Verhalten abzubilden. Zudem beschreiben Spezifikationen, z.B. in Formvon Anwendungsfällen, eher zu realisierende Funktionen als Zustände.Ein zu erzeugender Testfall wird hier als eine Sequenz von externen Triggern (Benutzeraktionen)angesehen. Dem Testfallgenerator kommt dann die Aufgabe zu <strong>aus</strong> allen möglichenBenutzeraktionen sinnvolle Sequenzen von Benutzerinteraktionen zu erstellen. Umeine Validierung der Systemreaktion durchzuführen muss anschließend das Verhalten deszu testenden Systems mit den in der Spezifikation enthaltenen Angaben verglichen werden.Anstatt wie in [BNBM05] Ereignissequenzgraphen von Hand zu Erstellen, wird hier einWeg vorgeschlagen über das dynamische Verhalten des Systems eine logische Folge vonmöglichen Ereignissen abzuleiten. Hierfür wird die Systemspezifikation des dynamischenVerhaltens in Form von Aktivitätsdiagrammen umgesetzt. Im Rahmen eines Modell-basiertenEntwicklungsprozesses könnten solche Modelle außerdem bereits als Ergebnis der Anforderungsermittlungvorliegen.Als Modellierungssprache wurde die Systems Modeling Language (<strong>SysML</strong>) [OMG06]<strong>aus</strong>gewählt. Sie bietet gegenüber der Unified Modeling Language (UML) unter anderemeinige Erweiterungen, die die Verhaltensmodellierung durch Aktivitätsdiagramme verein-

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!