Skip to content

[Improvement] 백엔드 테스트 커버리지 개선 필요 #697

Description

@Neibce

개선 대상 및 현재 한계점

현재 백엔드 전체 테스트는 정상 통과하고 있으나, 전체 테스트 커버리지가 낮아 회귀 버그를 충분히 방지하기 어려운 상태입니다.

  • 전체 테스트: 254 tests OK
  • 현재 전체 커버리지: 64%
  • 목표 전체 커버리지: 80%

특히 일부 핵심 모듈의 커버리지가 매우 낮아, 기능 수정이나 리팩토링 시 안정성을 보장하기 어렵습니다.

낮은 커버리지 모듈:

  • judge/dispatcher.py: 12%
  • fps/parser.py: 14%
  • profile/views/oj.py: 21%
  • banner/views/admin.py: 23%
  • popup/views/admin.py: 23%
  • problem/views/admin.py: 45%

제안하는 개선 사항

  • 전체 백엔드 테스트 커버리지를 64%에서 80% 이상으로 상향합니다.
  • 커버리지가 낮은 모듈을 우선 개선 대상으로 지정합니다.
  • judge/dispatcher.py, fps/parser.py처럼 핵심 로직에 가까운 모듈은 우선적으로 단위 테스트를 보강합니다.
  • views/admin.py 계열은 주요 요청 흐름, 권한 검증, 예외 케이스 중심으로 테스트를 추가합니다.
  • 테스트 추가 후 커버리지 리포트를 PR에 첨부하여 개선 결과를 확인할 수 있도록 합니다.

참고 자료

현재 커버리지 요약:

전체 테스트: 254 tests OK
총 커버리지: 64%

저커버리지 모듈:
- judge/dispatcher.py: 12%
- fps/parser.py: 14%
- profile/views/oj.py: 21%
- banner/views/admin.py: 23%
- popup/views/admin.py: 23%
- problem/views/admin.py: 45%

Acceptance Criteria

  • 전체 백엔드 테스트 커버리지가 80% 이상으로 상승한다.
  • judge/dispatcher.py 커버리지가 50% 이상으로 상승한다.
  • fps/parser.py 커버리지가 50% 이상으로 상승한다.
  • 저커버리지 view/admin 모듈에 대한 기본 요청/권한/예외 케이스 테스트가 추가된다.
  • 전체 테스트가 정상 통과한다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions