제대로 된 테스트 케이스를 작성해야 한다.
TDD : Test Driven Development의 약자로 테스트 주도 개발이라고 한다. 반복 테스트를 이용한 소프트웨어 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현한다.
<aside> 💡 TDD의 세 가지 법칙 1. 실패하는 단위 테스트를 작성할 때까지 실제 코드를 작성하지 않는다. 2. 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다. 3. 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
</aside>
→ 세 가지 규칙을 따를 시 개발과 테스트가 대략 30초 주기로 묶인다. 테스트 코드와 실제 코드가 함께 나오며 테스트 코드가 실제 코드보다 불과 몇 초전에 나온다.
⇒ 코드의 양 ↑
but 너무 방대한 양의 테스트 코드는 심각한 관리 문제 유발하므로 관리 중요
테스트 코드는 실제 코드 못지 않게 중요하다. 테스트 코드는 사고와 설계와 주의가 필요.
깨끗한 테스트 코드를 위한 필수적인 요소 : 가독성
예시)
p160~161 [9-1] 중복되는 코드가 많은 세 개의 테스트 케이스
→ 테스트와 무관한 코드 多 ex)pagePath 객체, responder, response 관련 코드 등
p160 [9-2] 9-1을 리팩터링한 코드
→ 테스트 코드는 본론에 돌입해 진짜 필요한 자료 유형과 함수만 사용
→ BUILD-OPERATE-CHECK 패턴 적합
BUILD : 테스트 자료를 만든다. OPERATE : 테스트 자료를 조작한다. CHECK : 조작한 결과를 확인한다.
❓도메인에 특화된 테스트 언어(DSL)