목차

1장. 반가워, TDD __1.1 TDD, 어디에 쓰는가? __1.2 지금 TDD가 필요하다 2장. TDD에 관한 오해와 진실 __2.1 (오해 1) TDD는 비용이 더 들고, 결국 개발 속도를 저하시킨다 __2.2 (오해 2) 코드 커버리지가 높으면 좋은 코드다 __2.3 (오해 3) 진압보다 예방에 소비되는 비용이 높다 __2.4 (진실 1) TDD != Unit Testing __2.5 (진실 2) TDD는 설계 개선에 도움을 준다 3장. 현장 이야기 __3.1 Mock 객체, 언제 그리고 어떻게 사용할까? __3.2 Fixture, 어떻게 사용해야 할까? __3.3 TDD와 디자인 패턴의 아름다운 동행 __3.4 private 메서드 그리고 단위 테스트 __3.5 만지기 싫은 레거시 코드, TDD가 해법이다 4장. TDD, 올바른 사용과 사용 습관 __4.1 Top-Down으로 방향을 잡고, Bottom-Up으로 구현에 집중하자 __4.2 바보 단계 거치기 __4.3 시나리오 구상하기 __4.4 TDD의 단위 테스트를 문서화하자 Appendix 마틴 파울러의 "Mock은 Stub이 아니다." __Mock과 Stub의 구분을 넘어서 __Driving TDD(TDD 진행 방식의 차이) __Fixture Setup(Fixture, 얼마나 어떻게 사용하는가?) __Isolation(단위 테스트 격리에 대한 관점의 차이) __Coupling Tests to Implementations(단위 테스트와 구현체의 결합도에 따른 영향) __Design Style(테스트가 설계에 미치는 영향) __다양한 시각, 점진적 사용, 그리고 성장