책 스터디/[완료] 테스트 주도 개발
테스트 주도 개발 - 1부 5장
김동형수
2022. 8. 30. 22:23
5장 솔직히 말하자면
할일목록
- $5 + 10CHF = $10(환율이 2:1일 경우)
$5 X 2 = $10amount를 private로 만들기Dollar 부작용?- Money 반올림?
equals()- hashCode()
- Equal null
- Equal object
- 5CHF X 2 = 10CHF
프랑(Franc)을 표현할 객체를 Dollar 곱하기 테스트를 복사해서 작성한다.
- Dollar 복사 붙여넣기 후 수정하기 생각
- 야유와 비난 ( 개발자로서의 자질의 문제..? )
- TDD 리듬 다시 생각하기
- 테스트 작성
- 컴파일되게 하기
- 실패하는지 확인하기 위해 실행
- 실행하게 만듦
- 중복 제거
3.1에 의거해서 Dollar를 복사 후 Franc로 변경한다.
할일목록
- $5 + 10CHF = $10(환율이 2:1일 경우)
$5 X 2 = $10amount를 private로 만들기Dollar 부작용?- Money 반올림?
equals()- hashCode()
- Equal null
- Equal object
5CHF X 2 = 10CHF
코드를 실행하기까지의 단계가 짧았기 때문에 '컴파일되게 하기' 단계도 넘어갈 수 있었다.
중복이 많아서 중복제거해야한다. equals()를 일반화하는 것부터 시작하자.
이번장 내용 정리
- 큰 테스트를 공략할 수 없다. 그래서 진전을 나타낼 수 있는 자그마한 테스트를 만들었다.
- 뻔뻔스럽게도 중복을 만들고 조금 고쳐서 테스트를 작성했다.
- 설상가상으로 모델 코드까지 도매금으로 복사하고 수정해서 테스트를 통과했다.
중복이 사라지기 전에는 집에 가지 않겠다고 약속했다.