1단계 - red
실패하는 테스트 작성
2단계 - green
테스트를 통과하게 한다
3단계 - refactor
코드를 정리한다
1->2->3->1->2->3 반복
만약 실패하지 않을 것으로 예상되는 테스트 시나리오가 있으면?
- 테스트로 전환하면 운영 코드를 변경하지 않아도 성공할 것으로 예상되는 테스트 시나리오는 red-green-refactor의 실패 단계에 맞지 않는다
- 선택지
- 1. red-green-refactor 주기에 적합하지 않기 때문에 해당 테스트 시나리오 삭제
- red-green-refactor 주기를 위배하고 성고하는 테스트를 추가
- 해당 테스트 시나리오를 테스트로 전환하지 않아도 불안하지 않으면 1번 선택
- 해당 테스트 시나리오를 테스트로 전환하지 않으면 미래의 코드 수정 과정에서 발생할 수 있는 버그가 우려되는 경우 2번을 선택