November 2002
Intermediate to advanced
240 pages
5h 9m
English
In Part I, we will develop typical model code driven completely by tests (except when we slip, purely for educational purposes). My goal is for you to see the rhythm of Test-Driven Development (TDD), which can be summed up as follows.
Quickly add a test.
Run all tests and see the new one fail.
Make a little change.
Run all tests and see them all succeed.
Refactor to remove duplication.
The surprises are likely to include
How each test can cover a small increment of functionality
How small and ugly the changes can be to make the new tests run
How often the tests are run
How many teensy-weensy steps make up the refactorings