Bei Unit- und Integrationstests besteht eine der essentiellen Aufgaben darin, geeignete Testdaten bereit zu stellen.
Um Tests einfach und übersichtlich zu halten, steht man vor der Herausforderung, komplexe Testobjekte einfach und kompakt zu erstellen. Außerdem sollten die Testobjekte maßgeschneidert für die jeweiligen Tests sein, damit offensichtlich ist, welche Daten für den jeweiligen Test relevant sind.
Ein Ansatz, diese zwei Aspekte unter einen Hut zu bringen, sind Testobjekt-Builder.
Im Vortrag erläutern wir in einer kurzen Einführung, wie ein Testobjekt-Builder aufgebaut ist und wie man ihn einsetzen kann. Anschließend zeigen wir, wie man in Java mit Hilfe von Tools Testobjekt-Builder schnell erzeugen kann, die den Ansprüchen vieler Anwendungsszenarien vollauf genügen.
Außerdem erklären wir an konkreten Beispielen, wie man effizient Builder für Test-Szenarien schreiben kann, in denen die automatisch generierten Builder an ihre Grenzen kommen. Dabei stellen wir einige Best Practices vor, die wir an Code-Beispielen in Java demonstrieren.
Bastian Feigl arbeitet seit 2014 als agiler Softwareentwickler bei der andrena objects ag. Er legt Wert darauf, mit Hilfe der Clean Code-Prinzipien und automatisierten Tests verständlichen und langfristig wartbaren Code zu schreiben.
Sabine Oboril studierte an der Universität Karlsruhe (TH) Informatik und ist seit 2010 in der professionellen Software-Entwicklung tätig. Seit 2012 arbeitet sie bei der andrena objects ag. Ihr besonderes Interesse liegt im Bereich der Software-Qualitätssicherung sowie in der Verbesserung von Entwicklungsprozessen durch den Einsatz agiler Methoden.