피드로 돌아가기
[Hands-on] Guide to Locally Testing Athenz Before Opening a PR
Dev.toDev.to
DevOps

CI 리소스 최적화와 개발 생산성 향상을 위한 Athenz 로컬 테스트 전략

[Hands-on] Guide to Locally Testing Athenz Before Opening a PR

Jeongwoo Kim2026년 6월 13일5beginner

Context

PR 제출 전 CI 단계에서 발생하는 반복적인 빌드 실패와 리소스 낭비 해결 필요. 대규모 모듈 구성으로 인해 전체 빌드 시 과도한 시간 소요 및 종속성 충돌 가능성 존재.

Technical Solution

  • CI 비용 절감을 위한 [skip ci] 플래그 기반의 조건부 파이프라인 실행 구조 채택
  • 초기 빌드 시 -DskipTests 옵션을 통한 Dependency 우선 확보로 테스트 실패 가능성 차단
  • Maven의 -pl(project list) 옵션을 활용한 특정 서버 모듈 단위의 부분적 테스트 수행
  • -Dtest 옵션과 # 구분자를 통한 Class 및 Method 레벨의 정밀한 테스트 범위 제어
  • Jacoco Report 자동 생성 체계를 통한 코드 커버리지 기반의 검증 프로세스 구축

Impact

전체 프로젝트 의존성 설치 및 초기 빌드에 약 16분 소요.


- CI 리소스 낭비를 막기 위해 단순 문서 수정 시 [skip ci] 태그 사용 습관화 - 대규모 모노레포 환경에서 -pl 옵션을 통한 모듈별 독립 테스트 환경 구축 - 테스트 범위의 세분화(Module -> Class -> Method)를 통한 피드백 루프 단축 - 코드 변경 후 Jacoco 리포트를 통해 실제 테스트 커버리지 충족 여부 확인

원문 읽기