October 2013
Intermediate to advanced
368 pages
9h 20m
English
TDD is a discipline to help you grow a quality design, not just a haphazard approach to verifying pieces of a system. Success with TDD derives from adopting a proper mentality about how to approach it. Here are a half-dozen useful mind-sets to adopt when doing TDD.
TDD is a way to grow a codebase from nothing into a fully functional system, bit by bit (or unit by unit). Every time you add a new unit of behavior into the system, you know it all still works—you wrote a test for the new behavior, and you have tests for every other unit already built. You don’t move on unless everything still works with the new feature in place. Also, you know exactly what the system was designed to do, because ...