질문(Ask) : 테스트 작성을 통해 시스템에 질문한다. (테스트 수행 결과는 실패) 응답(Respond) : 테스트를 통과하는 코드를 작성해서 질무에 대답한다.(테스트 성공)정제(Refine) : 아이디어를 통합하고, 불필요한 것을 제거하고, 모호한 것은 명확히 해서 대답을 정제한다. (리펙토링)반복(Repeat) : 다음 질문을 통해 대화를 계속 진행한다. TDD를 이용한 개발은 크게 '질문 > 응답 > 정제'라는 세 단계가 반복적으로 이루어진다. 참고 : 테스트 주도 개발 고품질 쾌속개발을 위한 TDD 실천법과 도구 30-31p