패스잇
개발 문화 · 협업 · 중급

TDD의 Red-Green-Refactor 사이클을 설명하고, 각 단계에서 개발자가 수행해야 할 주요 활동과 그 중요성에 대해 이야기해주세요.

힌트 · 실패하는 테스트 작성, 최소한의 코드 구현, 그리고 코드 구조 개선을 통해 견고한 코드와 설계 발전을 목표로 합니다.

실패하는 테스트최소한의 코드테스트 통과코드 개선중복 제거

모범답안

TDD의 Red-Green-Refactor 사이클은 견고한 코드를 만들기 위한 핵심적인 방법론입니다.

Red 단계에서는 실패하는 테스트 케이스를 먼저 작성합니다. 아직 구현되지 않은 기능을 명확하게 정의하고, 무엇을 테스트해야 하는지 구체화하는 단계입니다. 이 단계가 중요한 이유는 요구사항을 명확히 하고, 테스트 가능한 코드를 설계하도록 강제하기 때문입니다.

Green 단계에서는 Red 단계에서 실패한 테스트를 통과시키는 최소한의 코드를 작성합니다. 완벽한 코드를 만드는 것보다 테스트를 통과하는 데 집중하며, 빠른 피드백을 얻는 것이 목표입니다.

Refactor 단계에서는 코드의 가독성을 높이고, 중복을 제거하며, 설계를 개선합니다. 테스트를 통과하는 상태를 유지하면서 코드의 품질을 향상시키는 단계입니다. 이 단계를 통해 코드의 유지보수성을 높이고, 장기적인 관점에서 개발 효율성을 향상시킬 수 있습니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 테스트 (TDD / BDD) 면접 질문

← 테스트 (TDD / BDD) 면접 질문 전체 보기