Buchtipp: JUnit-Profiwissen

Über die letzten zwölf Jahre habe ich immer mal wieder eine Buchempfehlung in unserem Magazin agile review veröffentlicht. Einige alte Ausgaben sind mittlerweile leider vergriffen. Das heutige Buchreview stammt aus der Ausgabe 2/2013 und befasst sich einmal mit einem eher technischen Thema: JUnit-Profiwissen von Michael Tamm.

JUnit-Profiwissen: Effizientes Arbeiten mit der Standardbibliothek für automatische Tests in Java

Michael Tamm (2013), dpunkt.verlag, 300 Seiten

Ich erinnere mich noch genau, es war direkt nach einem Kundenauftrag zu TDD und Refactoring. Ein paar Entwickler kannten sich mit xUnit-Frameworks und entsprechenden Mocking-Bibliotheken bereits aus, andere nicht. Ich hatte keine wirklich griffige Referenz für den Einstieg in JUnit. Es gab zwar schon allerhand gute Bücher zu dem Thema, aber ich hätte eigentlich eine Kombination aus Büchern empfehlen müssen, um alle Bereiche abzudecken, die sinnvoll waren. Kurz danach bekam ich das Manuskript zu JUnit- Profiwissen von Michael Tamm. Als ich das Inhaltsverzeichnis überflog, merkte ich, wie wichtig dieses Buch für den gerade beendeten Kundenauftrag gewesen wäre. Denn es deckt inhaltlich JUnit 3 und 4 ab. Für beide Versionen gibt es einen Einstieg am Anfang. Ich persönlich würde für ein neues Projekt derzeit ausschließlich JUnit 4 verwenden, allerdings gibt es noch allerhand alte Projekte, die auf JUnit 3 aufbauen. In Bezug auf JUnit 4 werden nicht nur die Grundlagen, sondern auch fortgeschrittene Themen behandelt. Dazu gehören beispielsweise @Categories und @Theories. Zum ersten Mal tiefer verstanden habe ich allerdings die JUnit @Rules, die seit ein paar Jahren Einzug in JUnit gefunden haben. Mit ihnen lassen sich beispielsweise datengetriebene Tests, Vorbereitung eines Spring-Test-Kontexts und das Aufräumen der Datenbank anschließend miteinander kombinieren.

Gleichzeitig bewahren die JUnit-Rules aber auch eine Kapselung der einzelnen Problemlösungen, die man dann auch mehrfach wiederverwenden kann. Das Buch behandelt darüber hinaus Mocking-Bibliotheken wie JMock und Mockito. Es werden zwar nicht alle Aspekte vorgestellt, aber mit den Grundlagen kann eigentlich jeder von jetzt auf gleich mit einem fokussierten Test loslegen. Außerdem geht das Buch noch auf fließende Assertions mit Hilfe von entsprechenden Bibliotheken wie Hamcrest und FEST ein. Abgerundet wird das Buch durch Hinweise zu wartbaren Unit-Tests und wie man nicht nur funktionale Tests mit Hilfe von JUnit erstellen kann. Durch die Fülle an abgedeckten Themen halte ich das Buch deshalb für ein Must-read für jeden Entwickler.

  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks

Schreibe einen Kommentar

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