본문 바로가기

테스트주도 개발로 배우는 객체 지향 설계와 실천 목차

반응형

1부 서론

1장 테스트 주도 개발의 핵심은 무엇인가?

학습 과정으로서의 소프트웨어 개발

피드백은 가장 기본적인 도구다

변화를 돕는 실천법

테스트 주도 개발 간단 정리

좀 더 큰 그림

전 구간 테스트

테스트의 수준

외부 품질과 내부 품질

 

2장 객체를 활용한 테스트 주도 개발

객체망

값과 객체

메시지를 따르라

묻지 말고 말하라

그래도 가끔은 물어라

협력 객체의 단위 테스트

목 객체를 활용한 TDD 지원

 

3장 도구 소개

이미 아는 내용이라면 넘어가도 좋다

간략한 JUnit4 소개

햄크레스트 매처와 assertThat()

jMock2: 목 객체

 

2부 테스트 주도 개발 과정

4장 테스트 주도 주기 시작

우선 동작하는 골격을 대상으로 테스트하라

동작하는 골격의 외형 결정

피드백 소스 구축

불확실성은 일찍 드러내라

 

5장 테스트 주도 개발 주기의 유지

각 기능을 인수 테스트로 시작하라

회귀를 포착하는 테스트와 진행상황을 특정하는 테스트를 분리하라

테스트를 가장 간단한 성공 케이스로 시작하라

읽고 싶어 할 테스트를 작성하라

테스트가 실패하는 것을 지켜보라

입력에서 출력 순서로 개발하라

메서드가 아닌 행위를 단위 테스트하라

테스트에 귀를 기울이라

주기의 미세 조정

 

6장 객체 지향 스타일

유지 보수성을 고려한 설계

내부 대 이웃

단일 책임 원칙

객체 이웃의 유형

전체는 부분의 합보다 단순해야 한다

콘텍스트 독립성

올바른 정보 감추기

우리 견해가 반영된 관점

 

7장 객체 지향 설계의 달성

테스트를 먼저 작성하는 것이 설계에 어떻게 도움이 되는가

분류보다 의사소통

값 타입

객체는 어디에서 오는가?

인터페이스로 관계를 식별하라

인터페이스도 리팩터링하라

객체를 구성해 시스템의 행위를 기술하라

고수준 프로그래밍을 위한 대비

그럼 클래스는?

 

8장 서드 파티 코드를 기반으로 한 개발

소유한 타입에 대해서만 목 객체를 적용하라

통합 테스트에서 애플리케이션 객체에 목 객체를 적용하라

 

3부 동작하는 예제

9장 경매 스나이퍼 개발 의뢰

10장 동작하는 골격

11장 첫 테스트 통과하기

12장 입찰 준비

13장 스나이퍼가 입찰하다

14장 스나이퍼가 경매에서 낙찰하다

15장 실제 사용자 인터페이스를 향해

16장 여러 품목에 대한 스나이핑

17장 Main 분석

18장 세부 사항 처리

19장 실패 처리

 

4부 지속 가능한 테스트 주도 개발

20장 테스트에 귀 기울이기

21장 테스트 가독성

22장 복잡한 테스트 데이터 만들기

23장 테스트 진단

24장 테스트 유연성

 

5부 고급 주제

25장 영속성 테스트

26장 단위 테스트와 스레드

27장 비동기 코드 테스트

 

반응형