본문은 Fastcampus의 [이규원의 현실 세상의 TDD]를 수강하고 정리한 글입니다. 필요에 따라 생략/수정된 부분이 있을 수 있으며, 내용이 추후 변경될 수 있습니다.
대역과 가정
- DOC(depended-on component) 준비 비용이 큰 경우
- DOC란 대상 코드가 의존하는 코드를 의미한다
- 구동에 많은 자원이 필요
- 환경 제어가 어려움
- DOC가 SUT(system under test)에 제공하는 계약(인터페이스)을 준수하는 대역 코드를 사용
- 대역 코드가 계약을 DOC와 동일하게 준수할 것이라고 가정(assume)
테스트 대역의 종류
1) Dummy
- SUT 준비를 위해 해결되어야 하는 의존성이 테스트 대상 논리에 의해 사용되지 않는 경우에 의존 요소를 대신하는 테스트 대역
2) Stub
- 간접 입력 대역
- 미리 준비된 답을 출력
3) Spy
- 간접 출력 대역
- SUT의 간접 출력을 기록
4) Mock
- SUT 내부의 행위(상호작용) 검증
- 테스트 대역과 같은 의미로도 사용됨
5) Fake
- 의존성 계약을 준수하는 가벼운 구현체
- DOC보다 적은 부작용
- 인메모리 데이터베이스 등
'테스트코드 > 이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법' 카테고리의 다른 글
[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 6장: Should I test private methods (0) | 2022.08.11 |
---|---|
[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 5장: Mockists vs Classicists (0) | 2022.08.11 |
[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 3장: 입력과 출력 (0) | 2022.08.10 |
[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 2장: 환경 변화와 적응력 (0) | 2022.08.10 |
[이규원의 현실 세상의 TDD: 안정감을 주는 코드 작성 방법] 2부 1장: 인터페이스와 구현 (0) | 2022.08.10 |