책 스터디/[완료] 테스트 주도 개발
테스트 주도 개발 - 1부 7장
김동형수
2022. 9. 7. 02:28
7장 사과와 오렌지
할일목록
- $5 + 10CHF = $10(환율이 2:1일 경우)
$5 X 2 = $10amount를 private로 만들기Dollar 부작용?- Money 반올림?
equals()- hashCode()
- Equal null
- Equal object
5CHF X 2 = 10CHF- Dollar / Franc 중복
공용 equals- 공용 times
- Franc와 Dollar 비교하기
Franc과 Dollar 비교하면 무슨일이 벌어질까?
실패하는 테스트 코드 작성
금액과 클래스가 서로 동일할 때만 두 Money가 서로 같은 것이다.
자바 객체의 용어보다는 재정 분야에 맞는 용어를 사용하고 싶다.
현재는 통화 개념 같은 게 없고, 통화 개념을 도입할 충분한 이유가 없어 보이므로 잠시 동안은 이대로 둔다
할일목록
- $5 + 10CHF = $10(환율이 2:1일 경우)
$5 X 2 = $10amount를 private로 만들기Dollar 부작용?- Money 반올림?
equals()- hashCode()
- Equal null
- Equal object
5CHF X 2 = 10CHF- Dollar / Franc 중복
공용 equals- 공용 times
Franc와 Dollar 비교하기- 통화?
정리
- 우릴 괴롭히던 결함을 끄집어내서 테스트에 담아냈다.
- 완벽하진 않지만 그럭저럭 봐줄 만한 방법 (getClass())으로 테스트를 통화하게 만들었다.
- 더 많은 동기가 있기 전에는 더 많은 설계를 도입하지 않기로 했다.