Agent skill
write-test
테스트 코드 작성 및 실행. Use when (1) "테스트 작성해줘", (2) "테스트 실행해줘", (3) 테스트 커버리지 확인. ⚠️ QA 테스트 요청은 별도 스킬 사용: - Slack 알림 전송 → request-test
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/testing/write-test
SKILL.md
🔔 호출 시 메시지: 이 Skill이 호출되면 반드시
[SEMO] Skill: write-test시스템 메시지를 첫 줄에 출력하세요.
write-test Skill
테스트 코드 작성 및 실행 자동화
역할 범위
| 이 스킬에서 처리 | 다른 스킬에서 처리 |
|---|---|
| ✅ 테스트 코드 작성 | ❌ QA 테스터 할당 → change-to-testing |
| ✅ 테스트 실행 | ❌ 프로젝트 보드 상태 변경 → change-to-testing |
| ✅ 커버리지 확인 | ❌ Slack 테스트 요청 알림 → request-test |
Workflow
테스트 코드 작성
- 테스트 대상 파일/함수 분석
- 테스트 케이스 설계
- 테스트 코드 작성
- 테스트 실행 및 결과 확인
테스트 실행
bash
# 전체 테스트
npm test
# 특정 파일
npm test -- {test_file}
# 커버리지
npm test -- --coverage
테스트 파일 위치 규칙
| 프로젝트 유형 | 테스트 파일 위치 |
|---|---|
| Next.js | __tests__/ 또는 *.test.ts(x) |
| Node.js | test/ 또는 *.spec.ts |
| React | *.test.tsx (컴포넌트와 동일 디렉토리) |
테스트 유형별 작성 가이드
Unit Test
typescript
describe('함수명', () => {
it('should 예상 동작', () => {
// Arrange
const input = ...;
// Act
const result = fn(input);
// Assert
expect(result).toBe(expected);
});
});
Integration Test
typescript
describe('API 엔드포인트', () => {
it('should return 200 OK', async () => {
const response = await request(app)
.get('/api/resource')
.expect(200);
expect(response.body).toHaveProperty('data');
});
});
E2E Test (Playwright)
typescript
test('사용자 시나리오', async ({ page }) => {
await page.goto('/');
await page.click('button[data-testid="login"]');
await expect(page.locator('h1')).toContainText('Dashboard');
});
출력 형식
테스트 작성 완료
markdown
[SEMO] Skill: write-test → 테스트 작성 완료
📁 파일: {test_file_path}
✅ 테스트 케이스: {count}개
📊 커버리지: {coverage}%
테스트 실행 결과
markdown
[SEMO] Skill: write-test → 테스트 실행 완료
✅ Passed: {pass_count}
❌ Failed: {fail_count}
⏱️ 소요 시간: {duration}
🔴 Post-Action: 체이닝 프롬프트 (NON-NEGOTIABLE)
⚠️ 테스트 작성 완료 후 반드시 다음 단계를 확인합니다.
체이닝 플로우
text
skill:write-test 완료
│
└→ "다음 단계" 프롬프트
│
├─ "검증해줘" → skill:quality-gate
│ │
│ └→ "커밋해줘" → skill:git-workflow
│
└─ "커밋해줘" → skill:git-workflow (검증 건너뜀)
완료 시 출력
markdown
[SEMO] Skill: write-test → 테스트 작성 완료
📁 파일: {test_file_path}
✅ 테스트 케이스: {count}개
📊 커버리지: {coverage}%
---
💡 **다음 단계**:
- "검증해줘" → skill:quality-gate 호출
- "커밋해줘" → skill:git-workflow 호출
- "아니" → 대기
사용자 응답별 동작
| 사용자 응답 | 동작 |
|---|---|
| "검증해줘" | skill:quality-gate 호출 |
| "커밋해줘" | skill:git-workflow 호출 |
| "푸시까지 해줘" | skill:git-workflow 호출 (push 포함) |
| "아니", "계속" | 추가 작업 대기 |
QA 테스트 요청이 필요한 경우
이 스킬은 코드 테스트만 담당합니다. QA 프로세스는 별도 스킬을 사용하세요.
text
"테스트 요청해줘", "QA에게 알려줘"
│
├─ 상태 변경 + QA 할당이 필요하면
│ └→ skill:change-to-testing (ops/qa)
│
└─ Slack 알림만 필요하면
└→ skill:request-test (biz/management)
References
Didn't find tool you were looking for?