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.4. Metho<strong>de</strong>n zur Testfallerstellung<br />

daten zufällig erzeugt. Ebenfalls entstehen an dieser Stelle die für die Testdurchführung<br />

<strong>de</strong>r erzeugten Back-to-Back-Tests benötigten Referenzdaten. Daran anschließend erfolgt<br />

die Messung <strong>de</strong>s Ab<strong>de</strong>ckungsgra<strong>de</strong>s <strong>de</strong>s soeben erzeugten Testmusters. Auch dies erfolgt<br />

anhand <strong>de</strong>s vorliegen<strong>de</strong>n Mo<strong>de</strong>lls. Aus <strong>de</strong>m er<strong>mit</strong>telten Ab<strong>de</strong>ckungsgrad <strong>de</strong>s neu erzeugten<br />

Testmusters und <strong>de</strong>n Ab<strong>de</strong>ckungsgra<strong>de</strong>n <strong>de</strong>r in früheren Zyklen generierten Testdaten wird<br />

<strong>de</strong>r Testfallab<strong>de</strong>ckungsgrad (vgl. Unterkapitel 3.3.3) berechnet.<br />

Das Verfahren been<strong>de</strong>t die <strong>Testmustergenerierung</strong>, sobald <strong>de</strong>r Testfallab<strong>de</strong>ckungsgrad<br />

hun<strong>de</strong>rt Prozent erreicht hat. Ebenfalls ist eine Beschränkung <strong>de</strong>r maximal erzeugten<br />

Testmuster sinnvoll, um die Laufzeit zu begrenzen.<br />

3.4.3 <strong>Testmustergenerierung</strong> <strong>mit</strong> Evolutionären Algorithmen<br />

Die Erzeugung <strong>von</strong> Strukturtests <strong>mit</strong> Evolutionären Algorithmen folgt im Wesentlichen <strong>de</strong>r<br />

zufälligen Erstellung <strong>von</strong> Testmustersequenzen. Es gibt allerdings auch <strong>de</strong>utliche Unterschie<strong>de</strong>.<br />

Evolutionäre Algorithmen folgen <strong>de</strong>m natürlichen Phänomen <strong>de</strong>r biologischen<br />

Evolution. Nach Darwins Theorie <strong>de</strong>r natürlichen Auslese erfolgt in diesem Verfahren die<br />

Erzeugung neuer Daten aus einer zuvor generierten Menge <strong>von</strong> Daten. Im Fall <strong>de</strong>r <strong>Testmustergenerierung</strong><br />

han<strong>de</strong>lt es sich bei diesen Daten um Sequenzen <strong>von</strong> Eingabedaten zur<br />

Erzeugung <strong>von</strong> Testmustern [Bar00].<br />

Evolutionsalgorithmen o<strong>de</strong>r Evolutionäre Algorithmen folgen <strong>de</strong>m biologischen Vorbild<br />

<strong>de</strong>r Evolution. Sie bil<strong>de</strong>n <strong>de</strong>n Prozess <strong>de</strong>r Entwicklung einer Art nach. Dieser wird als eine<br />

Form <strong>von</strong> Optimierungsprozess gesehen, <strong>de</strong>ssen Ziel es ist, durch Manipulation <strong>von</strong> Erbinformationen<br />

eine Lebensform an sich än<strong>de</strong>rn<strong>de</strong> Umwelt- und Lebensbedingungen in<br />

kurzen Zeiträumen anzupassen. Die Evolution ist hierbei eine Art Suchprozess, welcher in<br />

<strong>de</strong>r Vielzahl <strong>von</strong> erzeugbaren Erbinformationen diejenigen aussucht, welche eine Lebensform<br />

am besten an seine Umwelt anpassen und dadurch die Arterhaltung sichern [Schö94].<br />

Diesem Prinzip folgend ist das Ziel <strong>de</strong>r <strong>Testmustergenerierung</strong>, die Erzeugung möglichst<br />

guter Testmuster. Im Folgen<strong>de</strong>n wird <strong>de</strong>r Ablauf <strong>de</strong>r <strong>Testmustergenerierung</strong> <strong>mit</strong>tels<br />

Evolutionärer Algorithmen vorgestellt.<br />

Der wesentliche Unterschied zum allgemeinen Verfahren zur zufallsbasierten Erzeugung<br />

<strong>von</strong> Testmustern liegt in <strong>de</strong>r Art ihrer Erzeugung. Während im allgemeinen Verfahren aus<br />

Abschnitt 3.4.2 immer nur ein Testmuster erzeugt wird, wer<strong>de</strong>n im Verfahren <strong>mit</strong> Evolutionären<br />

Algorithmen immer mehrere gleichzeitig betrachtet, welche eine Population <strong>von</strong><br />

Testmustern bil<strong>de</strong>n. Aus einer Anfangspopulation (engl. Initial Population) wird nach und<br />

nach eine Population <strong>mit</strong> besseren Eigenschaften gebil<strong>de</strong>t. Das hierzu notwendige<br />

Verfahren ist zyklisch aufgebaut und in Abbildung 3-18 dargestellt, welche <strong>de</strong>n Grundaufbau<br />

eines Evolutionären Algorithmus zur <strong>Testmustergenerierung</strong> nach Sthamer [Sth et al.<br />

01] und Wegener [Weg02] zeigt.<br />

Schöneburg i<strong>de</strong>ntifiziert drei Prinzipien, auf <strong>de</strong>nen die Evolution beruht: die Selektion<br />

(engl. Selection) einzelner Individuen aufgrund ihrer Tauglichkeit, die Rekombination<br />

(engl. Recombination) <strong>de</strong>r Erbinformationen und die Mutation (engl. Mutation) <strong>de</strong>s Erbgutes.<br />

Die Selektion ist für die Steuerung <strong>de</strong>r Evolution zuständig. Sie bestimmt durch<br />

38

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!