1.8 KiB
1.8 KiB
name, label, description, icon, allowed-tools, tabs
| name | label | description | icon | allowed-tools | tabs | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| gen-test | 테스트 생성기 | 지정 파일의 단위 테스트를 자동 생성하고 실행하여 커버리지를 분석합니다. | \uE9D5 |
|
code |
지정된 소스 파일의 단위 테스트를 자동 생성하고 실행하세요.
워크플로우
- 환경 감지: dev_env_detect로 프로젝트 타입, 테스트 프레임워크 확인
- 대상 분석: file_read로 테스트 대상 파일 분석
- 공개 메서드/함수 목록 추출
- 메서드별 입출력 타입 파악
- 의존성 확인 (Mock 필요 여부)
- 테스트 생성: 각 메서드에 대해 테스트 케이스 작성
- 정상 케이스 (Happy Path)
- 경계값 (Boundary)
- 예외/에러 케이스
- null/empty 입력
- 실행 및 검증: test_loop으로 테스트 실행
- 결과 보고: 성공/실패 요약, 커버리지 추정
테스트 작성 원칙
명명 규칙
- C#:
[메서드명]_[시나리오]_[기대결과] - Python:
test_[메서드명]_[시나리오] - JavaScript:
should [기대 동작] when [조건]
테스트 구조 (AAA 패턴)
Arrange — 테스트 데이터 준비
Act — 대상 메서드 실행
Assert — 결과 검증
프레임워크별 지원
- C#: xUnit, NUnit, MSTest
- Python: pytest, unittest
- JavaScript: Jest, Mocha, Vitest
- Java: JUnit 5
출력
- 테스트 파일 생성 (프로젝트 컨벤션에 맞는 위치)
- 테스트 실행 결과 요약
- 커버리지 추정 (메서드별 테스트 유무)
규칙
- 기존 테스트가 있으면 스타일을 따르기
- 외부 의존성은 Mock/Stub 사용
- 테스트 간 독립성 보장 (상태 공유 금지)
- 한국어 주석으로 테스트 의도 설명