TDD란?
Date:
TDD란?
-
테스트 주도 개발(Test Driven Development)이란 TFD(Test First Development) + 리팩토링이다.
- TDD란 프로그래밍 의사결정과 피드백 사이의 간극을 의식하고 이를 제어하는 기술이다.
- TDD는 분석 기술이며, 설계 기술이기도 하다.
TDD를 하는 이유
- 디버깅 시간을 줄여준다.
- 동작하는 문서 역활을 한다.
- 변화에 대한 두려움을 줄여준다.
TDD 사이클
-
실패하는 테스트를 구현한다.
-
테스트가 성공하도록 프로덕션 코드를 구현한다.
-
프로덕션 코드와 테스트 코드를 리팩토링한다.
TDD 원칙
- 원칙 1 - 실패하는 단위 테스트를 작성할 때까지 프로덕션 코드를 작성하지 않는다.
- 원칙 2 - 컴파일은 실패하지 않으면서 실행이 실패하는 정도로만 단위 테스트를 작성한다.
- 원칙 3 - 현재 실패하는 테스트를 통과할 정도로만 실제 코드를 작성한다.
Reference(출처)
박재성님의 nextstep TDD, Clean Code 강의에서 공부한 자료입니다.
댓글