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

Erfolgreiche ePaper selbst erstellen

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

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

impliziert, dass das zu prüfen<strong>de</strong> Objekt in seiner Breite getestet wird, also nach Möglichkeit<br />

fast all seine funktionalen Komponenten während <strong>de</strong>r Testdurchführung min<strong>de</strong>stens<br />

einmal ausgeführt wer<strong>de</strong>n.<br />

In erster Linie sind kontrollflussorientierte Strategien zur Messung <strong>de</strong>r Strukturab<strong>de</strong>ckung<br />

zu nennen. Datenflussorientierte Strategien spielen in dieser Arbeit keine Rolle und wer<strong>de</strong>n<br />

daher nicht behan<strong>de</strong>lt. Die Messung <strong>de</strong>r Strukturab<strong>de</strong>ckung erfolgt anhand <strong>de</strong>s Kontrollflussgraphen,<br />

<strong>de</strong>r in Abschnitt 3.3.2 erklärt wird. In Abschnitt 3.3.3 wer<strong>de</strong>n die Begriffe<br />

Ab<strong>de</strong>ckungskriterium und Ab<strong>de</strong>ckungsgrad <strong>de</strong>finiert. Eine nähere Beschreibung <strong>de</strong>r unterschiedlichen<br />

in dieser Arbeit relevanten Ab<strong>de</strong>ckungskriterien erfolgt in <strong>de</strong>n Abschnitten<br />

3.3.4 und 3.3.5 und folgt <strong>de</strong>n Definitionen <strong>von</strong> Baresel [Bar00] und Chilenski [ChiMil94].<br />

Es wer<strong>de</strong>n folgen<strong>de</strong> Ab<strong>de</strong>ckungskriterien behan<strong>de</strong>lt:<br />

• Anweisungsab<strong>de</strong>ckung (C 0 )<br />

• Zweigab<strong>de</strong>ckung (C 1 )<br />

• Bedingungsab<strong>de</strong>ckung<br />

o Einfache (atomare) Bedingungsab<strong>de</strong>ckung (C 2 )<br />

o Mehrfach-Bedingungsab<strong>de</strong>ckung (C 3 )<br />

o Minimale Mehrfach-Bedingungsab<strong>de</strong>ckung<br />

o Modifizierte Mehrfach-Bedingungsab<strong>de</strong>ckung (MC/DC)<br />

• Pfadab<strong>de</strong>ckung (C 7 )<br />

3.3.1 Bemerkung<br />

Einleitend ist zu <strong>de</strong>m Thema Ab<strong>de</strong>ckung zu bemerken, dass die Gründlichkeit <strong>von</strong> Tests<br />

nicht nur aufgrund eines Ab<strong>de</strong>ckungskriteriums bewertet wer<strong>de</strong>n sollte. Dies ver<strong>de</strong>utlicht<br />

folgen<strong>de</strong> C-Funktion:<br />

int speed (int distance, int time) {<br />

return distance/time;<br />

}<br />

Abbildung 3-10: Programmbeispiel in C<br />

Mithilfe je eines Wertes für distance und time kann diese Funktion <strong>mit</strong> hun<strong>de</strong>rtprozentiger<br />

Ab<strong>de</strong>ckung getestet wer<strong>de</strong>n, wenn die Ausführung aller Anweisungen als<br />

Ab<strong>de</strong>ckungsmaß herangezogen wird. Dabei han<strong>de</strong>lt es sich allerdings nur um eine <strong>von</strong> sehr<br />

vielen Möglichkeiten – bei 16-Bit Integer 2 16 Möglichkeiten – bei <strong>de</strong>r Wahl <strong>de</strong>s Wertes<br />

<strong>von</strong> time. In nur einem Fall kann ein Fehlverhalten <strong>de</strong>r Funktion aufge<strong>de</strong>ckt wer<strong>de</strong>n,<br />

wenn time <strong>de</strong>n Wert Null annimmt und die Division durch null zu einem Laufzeitfehler<br />

führt. Die Messung <strong>de</strong>r Ab<strong>de</strong>ckung allein kann folglich keine Aussage über die Qualität<br />

<strong>von</strong> Testfällen treffen. Dem gegenüber steht <strong>de</strong>r Fall, wenn keine hun<strong>de</strong>rtprozentige Ab<strong>de</strong>ckung<br />

durch eine Menge <strong>von</strong> Testmustern erreicht wird. Dies ist ein Indiz dafür, dass<br />

weitere Testmuster erstellt wer<strong>de</strong>n sollten, um die bisherigen Testfälle zu vervollständigen.<br />

24

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!