Donnerstag, 31. Oktober 2013

Dummy Object by Example

Das ist der zweite Teil der Serie über Test Doubles. Der erste Teil mit der Einführung von Test Doubles und dem Aufbau des Beispiels findet sich hier.

Dummy-Objekte dienen dazu, für den Unit-Test nicht interessierende, aber zwingend aufzubauende Abhängigkeiten zu vereinfachen. In dem Beispiel soll die Berechnung der Rechnungssumme getestet werden. Dass der Kunde eine Adresse haben muss, ist dabei nicht von Interesse. Deshalb soll ein Dummy-Kunde geschaffen werden, der ohne Adresse auskommt.

Mittwoch, 30. Oktober 2013

Test Doubles by Example

Unit Tests sollen den produktiven Code gegen Fehler absichern. Es entsteht eine Art Sicherheitsnetz, das auch größere Umbauarbeiten am Code (Refactorings) fast gefahrlos erlaubt. Damit aber keine Pseudosicherheit aufgebaut wird, müssen Unit Tests einigen Grundregeln folgen. Diese wurden von Tim Ottinger und Jeff Langr sehr gut als FIRST-Kriterien zusammengefasst.

Test Doubles leisten einen unschätzbaren Wert zur Erreichung der ersten beiden Kriterien FAST und ISOLATED. Die Kritierien REPEATABLE, SELF-VERIFYING und TIMELY sind durch keine Tools erreichbar und müssen durch die Disziplin jedes einzelnen Entwicklers umgesetzt werden.