21.11.2013 Aufrufe

Eine Einführung in die Programmiersprache C und die Grundlagen ...

Eine Einführung in die Programmiersprache C und die Grundlagen ...

Eine Einführung in die Programmiersprache C und die Grundlagen ...

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.

<strong>E<strong>in</strong>e</strong> <strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> Informatik <strong>und</strong> <strong>die</strong> <strong>Programmiersprache</strong> C<br />

30.4 Test-Driven Development (TDD)<br />

E<strong>in</strong> weiterer Ansatz ist das Test-Driven Developpment. Hierbei wird jeweils zuerst festgelegt, welche<br />

neue Funktionalität e<strong>in</strong>em Modul oder e<strong>in</strong>em System h<strong>in</strong>zugefügt werden soll. Anschliessend<br />

wird e<strong>in</strong> Test entworfen (Üblicherweise Code), welcher <strong>die</strong> neue Funktonalität testet (Und allenfalls<br />

benötigte Schnittstellenfunktionen als Codegerüst, d.h. ohne funktionalität, implementiert). Nun<br />

wird das Projekt compiliert <strong>und</strong> dem Test unterworfen, der Test muss dabei fehlschlagen, weil <strong>die</strong><br />

neue Funktionalität noch gar nicht implementiert ist.<br />

Nun wird <strong>die</strong> neue Funktionalität implementiert, das Modul erneut compiliert <strong>und</strong> dem Test unterworfen.<br />

Nun muss der Test bestanden werden.<br />

Bei e<strong>in</strong>em TDD-Projekt beg<strong>in</strong>nt man somit mit e<strong>in</strong>em Modul, welches nur aus den leeren Schnittstellenfunktionen<br />

besteht, also noch ke<strong>in</strong>e Funktionalität besitzt. Dieses wird nun dem Test unterworfen<br />

(Wobei der Test fehlschlägt), anschliessend wird <strong>die</strong> Funktionalität h<strong>in</strong>zugefügt <strong>und</strong> erneut<br />

getestet (Wobei der Test nun bestanden werden muss). Anschliessend wird wieder e<strong>in</strong> Test <strong>und</strong><br />

allfällige Schnittstellenfunktionen h<strong>in</strong>zugefügt, getestet, Funktionalität h<strong>in</strong>zugefügt <strong>und</strong> wieder getestet.<br />

Dieser Prozess wird sooft wiederholt, bis das System als ganzes <strong>die</strong> gewünschte Funktionalität<br />

aufweist.<br />

Bei jedem Test werden immer alle bisher entworfenen Tests abgearbeitet, so wird sichergestellt,<br />

dass e<strong>in</strong>e neu h<strong>in</strong>zugefügte Funktionalität nichts bestehendes beschädigt.<br />

Gedruckt am 10.09.2009 14:23:00 Letzte Änderung am: 10. September 2009 Version 2.4.1, I. Oesch 122/147

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!