← 질문 목록
#397깊이 0
시험을 먼저 쓰면 무엇이 달라지는가?
프레임워크기초
답변 연습
내 답변 적어보기접힘
이 브라우저에 자동 저장 · 0자
모범답안 확인하기내 답변 뒤에 열어보세요
쓰는 순서가 설계를 바꾼다. 시험을 먼저 쓰려면 그 코드를 바깥에서 부를 수 있어야 하고, 그러려면 의존을 밖에서 넣는 모양이 된다.
- 시험
그다음은 아직 없는 코드입니다. 부르는 문장을 먼저 쓴다
아직 없는 코드그다음은 인터페이스입니다. 쓰는 사람 편에서 모양이 정해진다
인터페이스그다음은 구현입니다. 빨간불을 보고 통과하는 데 필요한 만큼만 채운다
구현
빨간불을 먼저 보는 것이 절차의 일부다. 실패하는 것을 봐야 그 시험이 실제로 무언가를 검사한다는 것을 알 수 있다.
얻는 것이 설계만은 아니다. 방금 짠 것이 어디까지 되는지 즉시 알게 되고, 고치다 어긋났을 때 되돌아갈 지점이 생긴다.
대가도 있다. 만들 것이 아직 흐릴 때는 시험이 먼저 굳어 방해가 된다. 그럴 때는 대충 만들어 보고 버린 뒤 다시 시작하는 편이 빠르다.
나중에 쓰는 것과 결과가 같지 않다. 나중에 쓰면 이미 짜 놓은 구조에 맞춰 쓰게 되어, 부르기 어려운 구조가 그대로 남는다.