Nest.js

지속적 통합(CI)에 테스트 통합

CI에 테스트를 붙일 때는 단순히 `npm test`를 실행하는 수준을 넘어, pull request 차단 조건, 병렬 실행 범위, 테스트용 환경 변수와 의존 서비스를 함께 정해야 합니다. NestJS 프로젝트에서는 unit, e2e, coverage job을 나누어 실패 원인을 빠르게 좁힙니다.

실행 시점, 실패 차단 기준, 테스트 환경 변수를 기준으로 CI 테스트 통합 방식을 정합니다.

지속적 통합 흐름

1

지속적 통합(CI) 개념

지속적 통합은 변경 사항을 자주 병합하고 자동 빌드와 테스트로 문제를 빠르게 드러내는 개발 흐름입니다.

2

GitHub Actions를 사용한 CI 통합 예시

GitHub Actions에서 Node, 캐시, 테스트 명령, DB 서비스를 고정합니다.

3

NestJS CI/CD 파이프라인 최적화 및 고려사항

느린 e2e는 별도 job으로 분리하고, coverage threshold와 artifact를 남겨 실패한 변경이 어디에서 깨졌는지 확인합니다.

4

지속적 통합

NestJS 테스트를 CI에 연결할 때 실행 시간, 의존 서비스, 실패 피드백 위치를 함께 설계합니다.