Claude Code로 웹서비스 테스트 문서 자동 생성하기

먼저 요약부터

  • 테스트 문서 쓰기 귀찮아서 만든 Claude Code 스킬
  • Unit부터 접근성 테스트까지 7가지 유형 지원
  • 한글/영어 둘 다 됨
  • GitHub: greeun/webapp-test-docs-writer

솔직히 테스트 문서, 쓰기 싫잖아요

개발 끝나고 QA팀한테 넘길 때마다 느끼는 거지만, 테스트 문서 작성이 은근 골치입니다.

  • 케이스 하나하나 적다 보면 시간이 훌쩍 지나가고
  • 누가 썼느냐에 따라 형식도 제각각이고
  • “이거 빠뜨린 거 아니야?” 하는 불안감도 있고
  • 보안이나 성능 테스트는 뭘 어떻게 써야 할지 막막하고

그래서 그냥 Claude한테 시켜보자, 하고 만든 게 이 스킬입니다.


해결책: AI한테 시키기

webapp-test-docs-writer에서 webapp-test-code-generator로의 워크플로우

문서 작성 스킬이 테스트 시나리오와 케이스를 만들고, 코드 생성 스킬이 실행 가능한 테스트 코드로 변환합니다.


파일 구조

webapp-test-docs-writer/
├── SKILL.md                    # 스킬 정의 파일
├── README.md                   # 사용법
└── references/
    ├── templates.md            # 공통 템플릿
    ├── unit/guide.md           # 단위 테스트 가이드
    ├── integration/guide.md    # 통합 테스트
    ├── api/guide.md            # API 테스트
    ├── e2e/guide.md            # E2E 테스트
    ├── security/guide.md       # 보안 테스트
    ├── performance/guide.md    # 성능 테스트
    └── accessibility/guide.md  # 접근성 테스트

테스트 유형별로 가이드 파일을 분리해뒀습니다. Claude가 상황에 맞게 참고하도록요.


7가지 테스트 유형

유형뭘 테스트하나주로 쓰는 도구
Unit함수 하나하나 잘 돌아가는지Jest, Vitest, pytest
Integration서비스↔DB, API↔컴포넌트 연동Supertest, Testcontainers
APIREST/GraphQL 엔드포인트Postman, REST Assured
E2E회원가입~결제까지 전체 흐름Playwright, Cypress
SecurityXSS, SQL Injection 등 보안 구멍OWASP ZAP, Burp Suite
Performance응답 속도, 동시 접속 한계k6, JMeter, Gatling
Accessibility키보드 접근, 스크린리더axe DevTools, Lighthouse

시나리오랑 케이스, 뭐가 다른 건지

처음에 이 둘 구분이 좀 헷갈렸는데, 정리하면 이렇습니다.

구분시나리오케이스
질문“뭘 테스트해?”“어떻게 테스트해?”
관점비즈니스 입장실행하는 사람 입장
상세도대략적인 설명클릭 몇 번, 뭐 입력 수준
관계시나리오 1개에케이스 여러 개
테스트 문서 계층 구조: Feature → Scenario → Case → Step

로그인 기능으로 예를 들면,

로그인 기능 테스트 시나리오와 케이스 구조 예시

워크플로우

테스트 문서 작성 워크플로우: 입력 분석 → 유형 선택 → 시나리오 도출 → 케이스 작성 → 리뷰

시나리오 뽑을 때는 4가지 관점에서 생각합니다.

시나리오 도출 4가지 관점: Happy Path, Alternative, Exception, Boundary

사용법

이런 식으로 말하면 됩니다.

한글

  • 로그인 기능 테스트 케이스 작성해줘
  • 회원가입 API 테스트 시나리오 만들어줘
  • 결제 흐름 E2E 테스트 좀 뽑아줘

English

  • Write test cases for the login feature
  • Create API test scenarios for user registration
  • Generate security test cases for authentication

출력 예시

시나리오 문서

항목내용
테스트 대상사용자 인증 시스템
범위로그인, 소셜 로그인, 계정 잠금
유형API, E2E
ID시나리오유형우선순위
SC-LOGIN-001정상 자격증명으로 로그인정상Critical
SC-LOGIN-002잘못된 자격증명으로 실패실패High

케이스 문서

TC-API-001: 이메일+비밀번호 정상 로그인

항목내용
우선순위Critical
전제조건유효한 계정 있음, 로그아웃 상태
테스트 데이터{"email": "te**@*****le.com", "password": "Pass123!"}
순서할 일예상 결과
1POST /api/auth/login 호출200 OK
2응답 확인accessToken, refreshToken 있음
3토큰으로 다른 API 호출사용자 정보 정상 반환

자동화: Jest + Supertest로 가능


설치

# 클론 받고
git clone https://github.com/greeun/webapp-test-docs-writer.git

# Claude Code 스킬 폴더에 링크
ln -s $(pwd)/webapp-test-docs-writer ~/.claude/skills/webapp-test-docs-writer

써보니까

솔직히 말하면, 처음부터 완벽한 문서가 나오진 않습니다. 프로젝트마다 상황이 다르니까요.

그래도 빈 문서 앞에서 뭘 써야 하나 고민하는 시간은 확실히 줄었고, 형식이 일정하니까 나중에 정리하기도 편합니다. 특히 보안 테스트나 접근성 테스트처럼 평소에 잘 안 쓰던 유형도 가이드가 있으니까 “아 이런 것도 넣어야 하는구나” 하고 챙기게 되더라고요.


링크

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤