23.06.2015 Aufrufe

Testmustergenerierung mit Hilfe von ... - ihmor.de

Testmustergenerierung mit Hilfe von ... - ihmor.de

Testmustergenerierung mit Hilfe von ... - ihmor.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3.3. Ab<strong>de</strong>ckung <strong>von</strong> Strukturmerkmalen<br />

Eingabevektoren erfüllen allerdings für (b > a && b > c) nicht das Kriterium. Die drei<br />

vorgestellten Eingabevektoren führen <strong>de</strong>mnach zu einem Ab<strong>de</strong>ckungsgrad <strong>von</strong><br />

cov MC/DC = 2<br />

1 .<br />

3.3.4.4 Pfadab<strong>de</strong>ckung<br />

Die Pfadab<strong>de</strong>ckung (engl. path coverage) ist das umfangreichste Ab<strong>de</strong>ckungskriterium und<br />

for<strong>de</strong>rt die Ausführung aller möglichen Pfa<strong>de</strong> <strong>de</strong>s Testobjektes. Im Beispiel <strong>von</strong> Abbildung<br />

3-11 sind vier Pfa<strong>de</strong> möglich. Bei komplexeren Systemen übersteigt die Ausführung sämtlicher<br />

Pfa<strong>de</strong> allerdings die Möglichkeiten <strong>de</strong>r Tester. Zu<strong>de</strong>m können im Testobjekt<br />

Schleifen ohne obere Grenzen <strong>de</strong>r Iterationszahl vorkommen, wodurch eine unendliche<br />

Anzahl <strong>von</strong> Pfa<strong>de</strong>n zu testen wäre. Aufgrund <strong>de</strong>ssen wird die Pfadab<strong>de</strong>ckung in <strong>de</strong>r Praxis<br />

nur in einfachen, überschaubaren Systemen verwen<strong>de</strong>t und hat in dieser Arbeit keine<br />

weitere Relevanz. Sie wird in <strong>de</strong>r Literatur als C 7 -Ab<strong>de</strong>ckung bezeichnet [Hart01].<br />

3.3.5 Mo<strong>de</strong>llab<strong>de</strong>ckung<br />

Unter Mo<strong>de</strong>llab<strong>de</strong>ckung wird die Ab<strong>de</strong>ckung <strong>von</strong> Mo<strong>de</strong>llkomponenten verstan<strong>de</strong>n. Je nach<br />

Art <strong>de</strong>s vorliegen<strong>de</strong>n Mo<strong>de</strong>lls sind seine Bestandteile sehr unterschiedlich. Ebenso<br />

variieren <strong>de</strong>mentsprechend die Ab<strong>de</strong>ckungskriterien, unter <strong>de</strong>ren Berücksichtigung das<br />

Mo<strong>de</strong>ll getestet wer<strong>de</strong>n soll. Die für die Co<strong>de</strong>ab<strong>de</strong>ckung genannten Kriterien lassen sich<br />

zum Teil auf Mo<strong>de</strong>lle übertragen. Im Folgen<strong>de</strong>n wer<strong>de</strong>n die Ab<strong>de</strong>ckungskriterien für<br />

Mo<strong>de</strong>lle in Simulink und Stateflow beschrieben, da diese vornehmlich in dieser Arbeit<br />

verwen<strong>de</strong>t wer<strong>de</strong>n.<br />

3.3.5.1 Zustandsab<strong>de</strong>ckung<br />

Die Anweisungsab<strong>de</strong>ckung besitzt keine äquivalente Entsprechung bei <strong>de</strong>r Betrachtung<br />

<strong>von</strong> Mo<strong>de</strong>llen. Ein nahe liegen<strong>de</strong>s Ab<strong>de</strong>ckungskriterium ist die Ab<strong>de</strong>ckung <strong>von</strong> Grundblöcken,<br />

aus <strong>de</strong>nen ein Mo<strong>de</strong>ll besteht. Je<strong>de</strong>r Grundblock entspricht dabei in <strong>de</strong>r Regel<br />

einer Menge <strong>von</strong> Anweisungen. Eine Ausprägung in Bezug auf Stateflowmo<strong>de</strong>lle ist die<br />

Zustandsab<strong>de</strong>ckung (engl. state coverage). Das da<strong>mit</strong> verbun<strong>de</strong>ne Testziel ist, je<strong>de</strong>n im<br />

Statechart vorkommen<strong>de</strong>n Zustand (State) <strong>mit</strong>hilfe <strong>de</strong>r Testdaten min<strong>de</strong>stens einmal zu<br />

durchlaufen. Der Ab<strong>de</strong>ckungsgrad errechnet sich hierbei als Verhältnis <strong>de</strong>r durch die Testdaten<br />

abge<strong>de</strong>ckten Zustän<strong>de</strong> <strong>de</strong>s Statecharts und <strong>de</strong>r insgesamt vorhan<strong>de</strong>nen Zustän<strong>de</strong>.<br />

3.3.5.2 Zweigab<strong>de</strong>ckung<br />

Das Kriterium Zweigab<strong>de</strong>ckung kann auf Mo<strong>de</strong>lle übertragen wer<strong>de</strong>n. Zur Erfüllung<br />

dieses Kriteriums wird eine Menge <strong>von</strong> Testdaten benötigt, die für je<strong>de</strong> Verzweigung im<br />

Simulinkmo<strong>de</strong>ll – beispielsweise an Blöcken wie Logical Operator, Relational Operator,<br />

Switch – alle möglichen Werte berechnet. Für das in Abbildung 3-13 gezeigte Mo<strong>de</strong>ll<br />

wer<strong>de</strong>n zwei Eingabevektoren benötigt, um bzgl. <strong>de</strong>r Zweigab<strong>de</strong>ckung das Mo<strong>de</strong>ll ausreichend<br />

zu testen: e = ( 0)<br />

und e = ( 2)<br />

1 2<br />

. Im ersten Fall wür<strong>de</strong> <strong>de</strong>r Block Relational Operator<br />

<strong>de</strong>n Vergleich <strong>mit</strong> falsch bewerten, im zweiten Fall <strong>mit</strong> wahr. Der Ab<strong>de</strong>ckungsgrad dieses<br />

32

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!