Java Reference
In-Depth Information
11.3.5.2■Probleme von TDD
Es gibt natürlich auch einige Nachteile bzw. Probleme bei der TDD. Zuerst einmal ist bei der
Sotwareentwicklung absolute Konsequenz nötig. Wenn man ein Projekt als TDD entwi-
ckeln will, muss man das Konzept in der Regel auch von Anfang bis zum Ende durchführen.
Zumindest sollten keine Lücken bis zu einem gewissen Entwicklungsstand vorkommen und
es sollte wirklich für alle Einheiten bezüglich aller denkbaren Testkonstellationen geprüt
werden. Grundsätzlich ist damit also ein erheblicher Aufwand notwendig, der sich nicht
immer auszahlt. Und insbesondere unerfahrene Entwickler können kaum alle notwendigen
Testfälle im Vorfeld konzipieren geschweige denn erstellen. Aber auch erfahrene Program-
mierer können potenzielle Fehlersituationen übersehen. Gerade im Umfeld des difusen
Verhaltens der Webbrowser ist das ein besonderes Problem.
Ebenso macht der konzeptionelle Aufbau von JavaScript selbst durch seine schwachen Syn-
taxregeln die Erstellung aussagekrätiger Tests kompliziert. Dazu muss man sich mit Refak-
torierung auskennen und in das xUnit-Framework einarbeiten. Auch das ist für unerfah-
rene Entwickler schwierig. Ebenso können automatisierte Tests grundsätzlich nicht alle
potenziellen Fehlerquellen überprüfen, insbesondere kein unvorhersehbares Anwenderver-
halten, Timing-Fehler oder sämtliche plattformabhängigen Probleme.
11.3.5.3■Fazit Pro und Contra
Wenn man das Pro und Contra abwiegt, sind Unit-Tests - für fortgeschrittene Entwickler -
ergänzende Testfeatures bzw. eine bestimmte Art des Vorantreibens der Programmierung,
die insbesondere bei komplexeren Applikationen sinnvoll sind. Wenn man das Verfahren
richtig betreibt, erzeugt man stabile, modulare und gut wartbare Applikationen. Bei kleine-
ren Projekten und mit wenig professioneller Programmiererfahrung ist der Aufwand aller-
dings zu groß und gegebenenfalls erzeugt man mehr Probleme, als dass man einen Nutzen
hat. Ebenso ist gerade das Webumfeld für TDD durch die unterschiedlichen Browser-Verhal-
ten sehr schwierig. Ich persönlich bin kein Freund von TDD bei JavaScript.
Search WWH ::




Custom Search