Test-driven development (TDD) writes tests before implementation. First decide a function’s interface, then test it, implement it, and finish when its tests pass. section 8.1.1
A practical TDD loop is:
- Choose the function interface. section 8.1.1
- Write tests for the intended behavior. section 8.1.1
- Write the implementation and stop when all tests pass. section 8.1.1
Figure 8.1 Hierarchy of testing categories
Compare unit, integration, behavioral, and UI tests by size, speed, and expected testing frequency. section 8.1.1














