Kent Beck: Test Driven Development by Example

Kent Beck: Test Driven Development by Example
Kent Beck: Test Driven Development by Example

Wer mit Test-Driven Development beginnen möchte, kommt um Kent Becks Buch nicht herum. Es langweilt nicht mit Theorie, wie es laufen sollte, sondern zeigt an drei sehr klaren Beispielen in Java und Python, wie Test-Driven Development funktioniert.

Im ersten Teil wird anhand des berühmten Money-Beispiels gezeigt, wie Test-Driven Development zu gutem Design und klaren Strukturen führt. Dabei entspricht das Ergebnis den Clean Code-Prinzipien, ohne dass man als Entwickler explizit darüber nachdenken muss. Kent Beck zeigt, wie man mit Test-Driven Development Design-Entscheidungen trifft, Refactorings durchführt und den Mut findet, einen Schritt zurück zu gehen, wenn eine Entscheidung sich als nicht mehr optimal herausstellt, weil sich die Anforderungen geändert haben.
Als Sprache für den ersten Teil kommt Java zum Einsatz und – natürlich – JUnit als Framework für die Tests.

Der zweite Teil zeigt am Beispiel von Python, wie man ein xUnit-Framework mit Test-Driven Development erstellen kann. Es lohnt sich, dieses Kapitel zu lesen, wenn man sich eine Vorstellung davon machen möchte, wie Test-Driven Development unter schwierigen Bedingungen funktioniert. Große Kenntnisse in Python sind ebensowenig erforderlich, wie Kenntnisse in Java für den ersten Teil.

Abgerundet wird das Buch mit einem dem Thema Pattern gewidmeten dritten Teil. Sämtliche Pattern werden im Umfeld des Test-Driven Development angewendet, wobei Kent Beck unterscheidet zwischen Test Pattern und Pattern für die Implementierung, die das Testen lediglich vereinfachen. Es ist interessant, dass Kent Beck in diesem Teil z.B. Mock Objects auf ein Pattern reduziert. Eingefleischte Fans von Mock Objects werden sich da sicherlich ungerecht behandelt fühlen, aber aus der Perspektive des Buches ist die Reduzierung an dieser Stelle sicherlich valide. Beispiele für Pattern zur Implementierung sind das Value Object, das Null Object oder die Factory Method.

Für diese und weitere Pattern gibt Kent Beck Empfehlungen dazu, ob sie beim Schreiben von Tests oder beim Refactoring sinnvoller einzusetzen sind. Den Abschluss des dritten Teils bilden Kapitel über Pattern zum Refactoring und zum Meistern von Test-Driven Development.

Der Stil des Buchs ist außergewöhnlich. Kent Beck schreibt, als würde er in einer Pair Programming Session neben einem sitzen. Das irritiert zu Beginn, hilft aber ungemein in das Thema zu finden. Das Buch ist dadurch extrem locker geschrieben und schnell gelesen. Die Code-Beispiele sind sehr gut verständlich.

Fazit: Wer mit Test-Driven Development beginnen möchte, muss dieses Buch gelesen haben. Für Fortgeschrittene ist es zu trivial.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.