12.04.2014 Aufrufe

Die Realisierungsphase und der Softwaretest, Kap ... - W3service.net

Die Realisierungsphase und der Softwaretest, Kap ... - W3service.net

Die Realisierungsphase und der Softwaretest, Kap ... - W3service.net

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.

- je einen Testfall für alle logischen Eingangs- <strong>und</strong> Ausgangsgrößen, speziell für<br />

die Fehlerausgänge.<br />

Test aller internen Pfade<br />

<strong>Die</strong>s ist ein typischer White-Box-Test. Durch geeig<strong>net</strong>e Wahl <strong>der</strong> Eingangsgrößen<br />

soll im Modulinneren je<strong>der</strong> Kontrollflusspfad mindestens einmal durchlaufen<br />

werden. <strong>Die</strong>s verhin<strong>der</strong>t unter an<strong>der</strong>em die Existenz von Codebereichen, die<br />

prinzipiell niemals erreichbar sind.<br />

Test aller Wie<strong>der</strong>holungen<br />

In einem weiteren White-Box-Test werden alle im Modulinneren vorkommenden<br />

Wie<strong>der</strong>holungen durch geeig<strong>net</strong>e Wahl <strong>der</strong> Eingangsgrößen jeweils auf die minimal<br />

<strong>und</strong> maximal mögliche Zahl <strong>der</strong> Durchschläge (Minimum <strong>und</strong> Maximum <strong>der</strong><br />

Iterationen) überprüft.<br />

<strong>Die</strong>s verhin<strong>der</strong>t weitestgehend die falsche Formulierung von Wie<strong>der</strong>holungsbedingungen.<br />

Codeinspektion auf Sensibilität<br />

<strong>Die</strong>ser vierte Punkt ist ein rein intuitiver Prozess. Hier werden keine formalen<br />

Spezifikationen o<strong>der</strong> Bedingungen überprüft, son<strong>der</strong>n es erfolgt eine Betrachtung<br />

des Codes nach Kriterien, die auf Erfahrung beruhen <strong>und</strong> stark von den<br />

Umgebungsbedingungen wie etwa <strong>der</strong> verwendeten Programmiersprache abhängen.<br />

Es ist leicht einsehbar, dass die genannten Punkte nur dann nutzbringend einsetzbar<br />

sind, wenn schon in den vorherigen Entwicklungsphasen die Prinzipien des Software<br />

Engineering konsequent angewandt wurden. So setzt <strong>der</strong> Black-Box-Test eine Beschreibung<br />

<strong>der</strong> Modulschnittstellen wie in <strong>Kap</strong>itel 5 beschrieben voraus. Der White-<br />

Box-Test ist nur dann verwendbar, wenn ausschließlich lineare Kontrollstrukturen<br />

nach dem Prinzip <strong>der</strong> strukturierten Programmierung (<strong>Kap</strong>itel 6) verwendet wurden.<br />

Wie viele an<strong>der</strong>e Teile <strong>der</strong> Softwareproduktion ist heute auch <strong>der</strong> Modultest durch<br />

geeig<strong>net</strong>e Werkzeuge, die auf dem Digitalrechner selbst installiert sind, unterstützbar.<br />

<strong>Die</strong>se oft sehr aufwendigen Werkzeuge lassen sich prinzipiell in die Kategorien<br />

Testfallgenerator <strong>und</strong> Programmanalysator unterteilen.<br />

Ein Testfallgenerator sorgt anhand <strong>der</strong> formalen vom Programmierer erstellten Modulspezifikation<br />

<strong>und</strong> <strong>der</strong> Programmquelle des Moduls für die automatische Generierung<br />

von geeig<strong>net</strong>en Testfällen <strong>und</strong> Testdaten. Er führt automatisch die Testfälle<br />

durch <strong>und</strong> vergleicht die Resultate mit den Sollvorgaben. Anhand eines Protokolls<br />

erhält <strong>der</strong> Programmierer Auskunft über aufgetretene Fehler <strong>und</strong> über die Korrektheitswahrscheinlichkeit<br />

des Moduls.<br />

Programmanalysatoren, wie z. B. das weit verbreitete Werkzeug LINT unter UNIX)<br />

überprüfen das Innere eines zu testenden Moduls. Sie erstellen Protokolle über eine<br />

Strukturanalyse, machen auf schlecht formulierte Bedingungen o<strong>der</strong> niemals erreichbare<br />

Statements aufmerksam <strong>und</strong> vieles mehr.<br />

64

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!