개발 문화 · 협업 · 기초
TDD(Test-Driven Development)는 무엇이며, TDD의 기본적인 개발 주기(Cycle)는 어떻게 되나요?
힌트 · 실패하는 테스트를 먼저 작성하고, 테스트를 통과할 만큼만 코드를 작성한 후, 코드를 리팩토링하는 개발 방법론입니다. Red-Green-Refactor 주기를 따릅니다.
테스트 우선Red-Green-Refactor실패 테스트 작성구현리팩토링
모범답안
TDD는 테스트 주도 개발(Test-Driven Development)의 약자로, 개발 전에 테스트 코드를 먼저 작성하는 개발 방법론입니다. 코드를 작성하기 전에 무엇을 만들어야 하는지 명확하게 정의하는 데 도움이 됩니다.
TDD의 기본적인 개발 주기는 Red-Green-Refactor로 알려져 있습니다.
Red (실패): 먼저 실패하는 테스트 코드를 작성합니다. 아직 구현 코드가 없기 때문에 당연히 실패해야 합니다. 이 단계를 통해 요구사항을 명확히 이해하고 테스트가 올바르게 작동하는지 확인합니다.
Green (성공): 작성한 테스트를 통과할 수 있을 만큼의 최소한의 코드를 작성합니다. 완벽한 코드를 만드는 것이 아니라, 테스트를 통과하는 데 집중합니다.
Refactor (리팩토링): 코드를 정리하고 개선합니다. 중복을 제거하고, 가독성을 높이며, 디자인을 개선합니다. 이 단계에서는 기존 테스트를 통과하는지 확인하면서 코드를 변경합니다.
이 주기를 반복하면서 점진적으로 코드를 완성해 나갑니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.