Front-End/리액트 테스트 입문
3. TDD 이해하기
jakejeong
2025. 1. 22. 16:19
TDD란?
TDD(Test-driven development) 코드를 작성하기 전에 테스트를 먼저 작성하는 소프트웨어 개발 방법론입니다. TDD는 테스트를 먼저 작성하여 코드의 품질을 높이고, 버그를 조기에 발견하는 것을 목적으로 합니다.
TDD를 사용하는개발 조직은 테스트도 개발의 일부로 느끼게 되고, 개발이 진행될 때마다 전체 테스트 코드가 동작되는 회귀 테스트가 실현되기 때문에 효과적인 개발 루틴을 확보할 수 있습니다.
TDD는 조직의 역량으로 확보되기까지 평균 4 ~ 6개월의 숙련 기간이 필요합니다.
원리
TDD는 일반적으로 다음과 같은 동작 원리(루틴)을 가지고 있습니다.
- 테스트 작성: 먼저, 구현하려는 기능에 대한 테스트 케이스를 작성합니다. 이 테스트는 기능이 제대로 작동하는지를 확인하는 역할을 합니다.
- 테스트 실패: 작성한 테스트는 처음에는 실패해야 합니다. 이는 아직 기능이 구현되지 않았기 때문입니다.
- 코드 작성: 테스트를 통과하도록 최소한의 코드를 작성합니다. 이 단계에서는 기능을 구현하기 위해 필요한 코드만 작성합니다.
- 테스트 통과: 작성한 코드가 모든 테스트를 통과하는지 확인합니다. 만약 실패한다면, 코드를 수정해야 합니다.
- 리팩터링: 코드가 테스트를 통과하면, 코드의 품질을 높이기 위해 리팩터링을 진행합니다. 이 과정에서 코드의 구조를 개선하지만, 기능은 변경하지 않습니다.
- 반복: 위 과정을 반복하며 점진적으로 소프트웨어를 발전시킵니다.
반응형