[Spring] TDD

zini9188·2023년 3월 8일
0

Spring

목록 보기
32/33

TDD란?

테스트 주도 개발(Test Driven Development)의 약자로 테스트를 먼저 하고 구현을 나중에 하는 것을 의미한다.

특징

  • 모든 조건에 만족하는 테스트를 먼저 진행하고, 조건에 만족하지 않는 테스트를 단계적으로 진행하면서 실패하는 테스트를 점진적으로 성공시켜 나간다.

  • 테스트 실행 결과가 failed인 테스트 케이스를 지속적으로 그리고 단계적으로 수정하며, 테스트 케이스 실행 결과가 passed가 되도록 만든다.

  • 테스트가 passed될 만큼의 코드만 우선 작성한다.

  • 실패하는 테스트 -> 실패하는 테스트를 성공할 만큼의 기능 구현 -> 성공하는 테스트 -> 리팩토링 -> 실패하는 테스트와 성공하는 테스트 확인의 흐름을 반복한다.

장점

  • 테스트를 통과할 만큼의 기능만을 구현하므로 한번에 너무 많은 기능을 구현하지 않아도 된다.

  • 테스트 코드가 추가되면서 작은 범위부터 검증하며 검증하는 범위가 넓어질수록 기능 구현도 점진적으로 완성되어 간다.

  • 리팩토링을 진행하는 범위가 적으므로 리팩토링의 비용이 상대적으로 적다.

  • 꾸준한 리팩토링으로 코드 품질을 높일 수 있다.

  • 코드가 수정되는 경우, 테스트를 진행하여 수정 결과를 빠르게 피드백받을 수 있다.

profile
백엔드를 지망하는 개발자

0개의 댓글