TDD와 단위테스트

    TDD

    • 테스트 주도 개발
    • 테스트 코드를 먼저 작성
    • 레드-그린 사이클
      • 레드(Red): 항상 실패하는 테스트 먼저 작성
      • 그린(Green): 테스트가 통과하는 프로덕션 코드 작성
      • 리팩토링(Refactoring): 테스트가 통과하면 프로덕션 코드의 구조를 재조정(Refactoring)함, 결과 변경 X

     

     

    단위테스트

    • 기능 단위의 테스트 코드를 작성
    • 테스트 코드를 먼저 작성하지 않아도 되고, 리팩토링도 포함되지 않음
    • 단위테스트 코드의 장점
      • 개발단계 초기에 문제를 발견하게 도와줌
      • 개발자가 나중에 코드를 리팩토링하거나 라이브러리 업그레이드를 했을 때 기존 기능이 올바르게 돌아가는지 확인할 수 있음
      • 기능에 대한 불확실성 감소
      • 시스템에 대한 실제 문서 제공. 단위 테스트 자체가 문서로 사용될 수 있음
    • 테스트 코드 작성을 도와주는 프레임워크
      • JUnit - Java

    댓글