tdd-test-writer은(는) 무엇을 하나요?
테스트 주도 개발을 위해 먼저 실패하는 테스트를 작성하고, 에이전트가 해당 테스트를 약화시키지 않고 통과하도록 요구하는 엄격한 구현 계약을 전달합니다. 사용자가 테스트 우선 워크플로, RED/GREEN 주기, 또는 자동화된 테스트를 통한 동작 게이팅 태스크를 요청할 때 사용하세요.
작동 방식
이 스킬은 TDD의 RED/GREEN/Blue 주기를 따릅니다:
RED 단계
- 사용자 요청을 분석하여 예상 동작을 정의합니다.
- 해당 동작을 검증하는 실패하는 테스트를 작성합니다.
- 테스트는 명확하고 구체적이며, 구현 세부 사항보다는 동작에 초점을 맞춥니다.
GREEN 단계
- 후속 에이전트(또는 동일 에이전트)는 작성된 테스트를 통과하는 최소한의 코드를 구현해야 합니다.
- 테스트를 통과하기 위해 테스트 자체를 수정하거나 약화시키는 것은 금지됩니다.
- 구현 계약은 "기존 테스트를 변경하지 않고 통과시킬 것"을 요구합니다.
BLUE 단계 (선택 사항)
- 테스트 통과 후, 코드 리팩토링이 필요한 경우 제안합니다.
- 리팩토링 중에도 모든 테스트는 계속 통과해야 합니다.
사용 예시
사용자: "사용자 로그인 기능을 TDD로 구현해줘"
에이전트:
1. 로그인 성공/실패 케이스에 대한 단위 테스트 작성
2. 테스트가 실패하는지 확인 (RED)
3. "이제 위 테스트를 통과하는 구현을 작성하세요. 테스트를 수정하지 마세요." 라는 계약 전달
지원 플랫폼
- Claude Code
- Cursor
- Codex
- 기타 AI 에이전트
환경 변수
TDD_STRICT_MODE:true로 설정 시, 테스트 수정을 완전히 금지합니다.
참고 사항
- 이 기술은
test-first,RED/GREEN,TDD,automated tests등의 키워드에 반응합니다. - 테스트는 가능한 한 격리되고 빠르게 실행되어야 합니다.
- 모의 객체(mock)와 스텁(stub)은 필요한 경우에만 사용합니다.