[우테프] 프리코스1주차-TDD

우아한 테크 프로 Pre 과정 1주차 : TDD

TDD

  1. 원칙1
    • 실패하는 단위 테스트를 작성할 때 까지 프로덕션 코드를 작성하지 않는다.
  2. 원칙2
    • 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트 작성
  3. 원칙3
    • 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성

도메인 설계에 집중
테스트 힘든 부분은 인터페이스로 처리

아무것도 없는 상태에서 개발하는 것은 개발에 있어서 가장 쉬운 것
기존 레거시 코드를 바꾸는게 더 힘듦 → 레거시 코드를 리팩토링하는게 개발자의 진짜 능력

테스트

  • input, output이 명확한 메서드가 TDD 적용 가장 쉬움
  • 경계값 테스트
  • private 을 테스트하려면 리플랙션을 활용할 수 있으나, public 에 대한 테스트가 private 테스트를 커버하기 때문에 그렇게 까지 할 필요는 없다.