Skip to content

test(web): E2E 테스트 커버리지 30% + pre-push 강제 #168

@cocoyoon

Description

@cocoyoon

배경

이슈 #162의 Phase 1 구현. 현재 E2E: 페이지 로딩 확인 수준 (5개 spec, ~300줄).
핵심 사용자 플로우 테스트 + Istanbul 코드 커버리지 30% 게이트를 pre-push hook에 추가.

체크리스트

Step 0: 인프라

  • Justfile에 e2e, e2e-only 타스크 추가
  • 핵심 컴포넌트에 data-testid 추가 (search-input, sort-button, upload-dropzone, feed-grid, like-button, save-button 등)

Step 1: content-consumption.spec.ts (~6 tests)

  • Explore 페이지 로딩 + grid 표시
  • 검색 입력 → 결과 필터링
  • 정렬 드롭다운
  • 포스트 상세 진입 (grid item → modal)
  • 스팟/솔루션 목록 표시
  • 피드 무한스크롤

Step 2: content-creation.spec.ts (~4 tests)

  • 업로드 페이지 + DropZone
  • 이미지 선택 → 프리뷰
  • 스팟 배치 (mock)
  • 솔루션 입력 폼

Step 3: engagement.spec.ts (~3 tests)

  • 좋아요 토글
  • 저장 토글
  • 솔루션 채택

Step 4: 테스트 헬퍼

  • tests/helpers.ts — 공통 mock, 네비게이션 유틸

Step 5: 커버리지 강제

  • Playwright Istanbul 코드 커버리지 설정
  • Next.js istanbul instrumentation 플러그인
  • scripts/check-coverage.sh (30% 미달 시 fail)
  • pre-push.sh에 E2E 커버리지 스텝 추가 (RUN_E2E_COVERAGE=1 토글)

관련

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions