More and more developers practice TDD, but implementation and test code are too often in a one-to-one relationship. This means that whenever implementation code changes, unit tests need to be adapted as well. The most likely cause? An abuse of test doubles (mocks, stubs, and so on). In this talk the methodology will be under the spotlight, no matter what TDD tool you're using. As a matter of fact there won’t be any slides, just plain PHP code. I will build a practical example using both PHPUnit and PHPSpec, two of the main testing tools for PHP, pointing out the advantages of using real implementations (when possible) instead of test doubles.