-
-
Notifications
You must be signed in to change notification settings - Fork 0
Prompts Testing
gon edited this page Jan 11, 2026
·
2 revisions
src/utils/validation.ts의 validateEmail 함수에 대한 테스트를 작성해줘:
- 유효한 이메일 케이스 (일반, 서브도메인, 특수문자)
- 무효한 이메일 케이스 (@ 없음, 도메인 없음, 공백)
- 엣지 케이스 (빈 문자열, null, undefined)
- describe/it 구조로 그룹화
src/services/UserService.ts의 테스트를 작성해줘:
- 외부 의존성(API, DB)은 모킹
- 성공/실패 케이스 모두 커버
- 에러 핸들링 검증
- 파라미터 검증 로직 테스트
POST /api/auth/login 엔드포인트의 통합 테스트를 작성해줘:
- 성공: 유효한 자격 증명으로 토큰 반환
- 실패: 잘못된 비밀번호 (401)
- 실패: 존재하지 않는 사용자 (404)
- 실패: 잘못된 입력 형식 (400)
- 레이트 리밋 검증
supertest 사용, 테스트 DB로 분리.
UserRepository의 통합 테스트를 작성해줘:
- 실제 테스트 DB 사용
- 각 테스트 전후 데이터 정리
- CRUD 전체 사이클 테스트
- 트랜잭션 롤백 테스트
src/components/LoginForm.tsx의 테스트를 작성해줘:
- @testing-library/react 사용
- 렌더링 테스트
- 사용자 입력 시뮬레이션
- 폼 제출 테스트
- 에러 메시지 표시 테스트
- 로딩 상태 테스트
src/hooks/useAuth.ts의 테스트를 작성해줘:
- @testing-library/react-hooks 사용
- 초기 상태 검증
- 로그인/로그아웃 동작 테스트
- 토큰 만료 처리 테스트
- 컨텍스트 의존성 모킹
Playwright로 로그인 플로우 E2E 테스트를 작성해줘:
1. 로그인 페이지 접속
2. 이메일/비밀번호 입력
3. 로그인 버튼 클릭
4. 대시보드 리다이렉트 확인
5. 사용자 정보 표시 확인
실패 케이스도 포함해줘.
결제 플로우의 E2E 테스트를 작성해줘:
- 상품 선택 → 장바구니 → 결제 → 확인
- 각 단계의 UI 상태 검증
- 에러 시 롤백 확인
- 스크린샷 캡처 포함
현재 테스트 커버리지 리포트를 분석하고,
커버되지 않은 src/services/ 코드에 대한 테스트를 추가해줘.
분기 커버리지 80% 이상 목표.
CI에서 가끔 실패하는 테스트가 있어:
- src/components/DataTable.test.tsx
비동기 타이밍 이슈인 것 같아.
waitFor, findBy 등을 적절히 사용해서 안정화해줘.