🔍 테스트 대상
사용자와 리뷰 도메인과 관련된 컴포넌트, 훅, 유틸리티의 단위 테스트를 진행합니다.
🧪 테스트 내용
사용자 도메인
[마이페이지 - 프로필]
- 사용자 이름, 이메일이 정상적으로 표시되는지 확인
- 사용자 정보가 누락된 경우 fallback 처리 확인
- 사용자 이미지가 정상 렌더링되는지 확인
- 비정상 사용자 ID로 접근 시 에러 처리 여부 확인
[마이페이지 - 티켓]
- 예매한 공연이 정확히 렌더링되는지 확인
- "환불하기" 버튼 클릭 시
- 예매 티켓이 없는 경우 "예매 내역 없음" 메시지 표시 여부 확인
리뷰 도메인
[공연 상세 페이지 - 리뷰 렌더링]
- 특정 공연 ID에 해당하는 후기 리스트가 정상 렌더링되는지 확인
- 각 항목: 작성자 이미지, 이름, 작성일, 내용, 좋아요 수, 싫어요 수 확인
- 베스트 리뷰 조건
- 좋아요 수가 특정 기준 이상일 때 "BEST Review" 태그가 표시되는지 확인
[리뷰 작성]
- 로그인된 사용자인 경우
- 텍스트 입력 후 제출시 UI 상으로 잘 반영 되는지 확인
- 로그인되지 않은 사용자는 리뷰 작성 시도 시 로그인 요구 모달 or 리디렉션 되는지 확인
[리뷰 삭제]
- 본인의 리뷰에 한해서 "삭제" 버튼이 표시되는지 확인
[리뷰 좋아요]
- "따봉" 버튼 클릭 시 좋아요수가 잘 올라가는지 확인
- 좋아요 수가 실시간으로 증가/감소하는지 확인
- 로그인되지 않은 경우, 좋아서 클릭 시 로그인 유도 동작 확인
✅ 기대 결과
- 사용자 정보 및 티켓 내역이 정확하게 UI에 반영
- 티켓 취소 시 UI와 상태가 정확히 반영됨
- 리뷰 작성/삭제/좋아요 동작이 정확히 반영됨
- 좋아요 수 기준치를 넘으면 BEST Review로 표시됨
- 예외 상황(로그인 X, 데이터 없음 등)도 모두 적절하게 fallback 처리됨
❌ 실패 기준
- 사용자 프로필 정보 누락 or 렌더링 오류
- 티켓 내역 표시 오류 or 취소 후 UI 갱신 실패
- 리뷰가 작성되었지만 UI에 반영되지 않거나, API 요청 실패
- 좋아요 수와 UI 동기화 실패 or 베스트 리뷰 표시 오류
- 로그인 상태 체크 누락으로 비로그인 유저가 리뷰 작성/삭제 가능
ℹ️ 참고
사용도구: Jest + React Testing Library + msw(mock)
🔍 테스트 대상
사용자와 리뷰 도메인과 관련된 컴포넌트, 훅, 유틸리티의 단위 테스트를 진행합니다.
🧪 테스트 내용
사용자 도메인
[마이페이지 - 프로필]
[마이페이지 - 티켓]
리뷰 도메인
[공연 상세 페이지 - 리뷰 렌더링]
[리뷰 작성]
[리뷰 삭제]
[리뷰 좋아요]
✅ 기대 결과
❌ 실패 기준
ℹ️ 참고
사용도구: Jest + React Testing Library + msw(mock)