Zum Inhalt

Buch-Rezension zu "Test Driven"

Test Driven

"Test Driven - Practical TDD and Acceptance TDD for Java Developers" von Lasse Koskela ist Ende 2007 bei Manning erschienen. Bei Test Driven geht es um die testgetriebene Software-Entwicklung in Java.

Teil 1: Grundlagen von TDD

Im ersten Kapitel werden die Ideen hinter Test Driven Development (TDD) vorgestellt und erklärt, wieso man als Entwickler davon profitiert. Der Initialaufwand für TDD ist höher als bei der Entwicklung ohne Tests. Doch soll der Code irgendwann in Produktion, muss dieser getestet werden. Und wenn man Tests eh braucht, kann man die auch zu einer Zeit schreiben, von der man selber noch etwas davon hat. Koskela zeigt dabei auch die Wichtigkeit von Refactoring auf. Ohne Tests wird darauf zu oft verzichtet. Der Code läuft, wieso durch eine Änderung neue Probleme riskieren? Hat man die TDD Tests, passen diese auf das beibehalten der Funktionalität auf. Und Refactoring ist bei TDD zentral: Hält man sich an die Vorschläge im Buch und versucht immer die einfachste Lösung zum bestehen der Tests zu schreiben, hat man meistens eine fragwürdige Qualität. Erst das Refactoring macht aus dem funktionierenden auch guten Code - dies gilt auch für die Tests. Kapitel 3 widmet sich daher vollständig dem Refactoring.

Die konkrete Umsetzung von TDD wird in den restlichen Kapiteln des 1. Teils mit der Entwicklung einer Template Engine vorgestellt.

Teil 2: TDD für spezifische Technologien

Im zweiten Teil geht es um die Anwendung von TDD bei spezifischen Technologien. Dies reicht von Webkomponenten über Datenzugriff bis zu Swing. Ansätze zum Testen von Multi-Thread Programmen und Zeitfunktionen werden ebenfalls anschaulich erklärt. Eine kurze Vorstellung der dafür benutzten Technologien (wie JSP, JDBC, Hibernate, DbUnit, usw.) sowie deren Verwendung zum Testen runden diesen Teil ab.

Teil 3: Acceptance TDD

Im letzten Teil werden die Akzeptanz-Tests behandelt. Es wird mit einer Erklärung der Grundbegriffe und Möglichkeiten fürs Vorgehen begonnen und geht dann zur Umsetzung mittels Fit. Der Kunde kann mit der Hilfe von Fit seine Anwendungsfälle in Tabellenform erfassen. Diese dienen dann als Input für Tests und ermöglichen so die Verifizierung der Funktionalität. Damit dies funktioniert muss der Entwickler die Verbindung zwischen Fit und den Unit-Tests erstellen.

Fazit:

Test Driven erklärt auf verständliche Art was die testgetriebene Entwicklung ausmacht und wieso man diese anwenden soll. Kapitel 1 und 3 behandeln Grundlagen die auch ausserhalb von Java gelten. Ich finde das Buch ist sehr gut geschrieben und ich konnte beim lesen nicht genug bekommen. Der dritte Teil kommt nicht ganz an die 2 ersten Teile heran. Da wäre mehr zur Verknüpfung von Fit um den Tests sowie Beispiele mit anderen Frameworks hilfreich gewesen. Dennoch kann ich das Buch ohne Einschränkung weiterempfehlen.

Zum Buch

Test Driven - Practical TDD and Acceptance TDD for Java Developers von Lasse Koskela, 2007 Manning, ISBN 978-1-932394-85-6, 544 Seiten