Maxim Mironjuk
-
April 06, 2025
Wer in Unit-Tests wahllos alles mockt, was mit einer Klasse zusammenhängt, baut Tests, die bei jedem Refactoring brechen, ohne dass sich am Verhalten der Anwendung etwas geändert hat. Die Taxonomie nach Gerard Meszaros unterscheidet Dummy, Stub, Fake, Spy und Mock als fünf klar abgegrenzte Rollen mit unterschiedlichem Zweck, unterschiedlicher Prüflogik und unterschiedlichem Kopplungsgrad an Implementierungsdetails. Dieser Beitrag zeigt die Theorie hinter jedem Test Double anhand handgeschriebener PHP-Implementierungen, unabhängig von einem bestimmten Test-Framework.