테스트 주도 개발 - 위키백과, 우리 모두의 백과사전
테스트 주도 개발은 매우 짧은 개발 사이클을 반복하는 소프트웨어 개발 프로세스 중 하나.
개발자는 먼저 요구사항을 검증하는 자동화된 테스트 케이스를 작성
테스트 케이스 통과를 위한 최소한의 코드 생성
작성한 코드를 표준에 맞게 리팩토링
Red
: 실패하는 테스트
먼저 작성을 해야 리팩토링 할때 코드의 신뢰성이 높아지기 때문
Green
: 단지 테스트를 통과하기 위해 코드작성하는 구간
Refactor
: 테스트의 동작의 변경없이 코드 향상 시키는 구간
TDD의 장점
안전한 코드
의존성이 낮은 코드
유지 보수가 용이하다
TDD의 단점
개발 속도