/e2e (E2E 테스트)
다운로드 후
~/.claude/commands/ 폴더에 복사하여 사용하세요Playwright로 end-to-end 테스트를 생성하고 실행합니다.
설명
description: Playwright로 end-to-end 테스트를 생성하고 실행합니다.🎭
e2e-runner 에이전트를 호출하여 E2E 테스트를 생성, 유지보수, 실행합니다.
이 커맨드가 하는 일
- 테스트 여정 생성 - 사용자 흐름을 위한 Playwright 테스트 생성
- E2E 테스트 실행 - 여러 브라우저에서 테스트 실행
- 아티팩트 캡처 - 실패 시 스크린샷, 비디오, 트레이스
- 결과 업로드 - HTML 리포트 및 JUnit XML
- 불안정한 테스트 식별 - 불안정한 테스트 격리
사용 시점
- 중요 사용자 여정 테스트 (로그인, 거래, 결제)
- 멀티 스텝 흐름이 end-to-end로 작동하는지 확인
- UI 상호작용 및 네비게이션 테스트
- 프론트엔드와 백엔드 간 통합 검증
- 프로덕션 배포 준비
테스트 아티팩트
모든 테스트에서:
- 타임라인과 결과가 포함된 HTML 리포트
- CI 통합을 위한 JUnit XML
실패 시에만:
- 실패 상태의 스크린샷
- 테스트의 비디오 녹화
- 디버깅을 위한 트레이스 파일
- 네트워크/콘솔 로그
빠른 명령어
# 모든 E2E 테스트 실행
npx playwright test
# 특정 테스트 파일 실행
npx playwright test tests/e2e/markets/search.spec.ts
# headed 모드로 실행
npx playwright test --headed
# 테스트 디버그
npx playwright test --debug
# 테스트 코드 생성
npx playwright codegen http://localhost:3000
# 리포트 보기
npx playwright show-report
# 트레이스 보기
npx playwright show-trace artifacts/trace.zip모범 사례
해야 할 것:
- ✅ Page Object Model 사용
- ✅
data-testid속성 사용 - ✅ 임의의 타임아웃 대신 API 응답 대기
- ✅ 중요 사용자 여정을 end-to-end로 테스트
- ✅ 테스트 실패 시 아티팩트 검토
하지 말아야 할 것:
- ❌ 불안정한 선택자 사용 (CSS 클래스)
- ❌ 프로덕션에서 테스트 실행
- ❌ 불안정한 테스트 무시
- ❌ E2E로 모든 엣지 케이스 테스트
⚠️
치명적: 실제 돈이 관련된 E2E 테스트는 반드시 테스트넷/스테이징에서만 실행!