엔드투엔드 테스트는 시스템 전체의 통합적인 동작을 검증할 수 있다. 하지만 실행 시간이 오래 걸리며, 실패 시 원인 분석이 복잡하다. 테스트 환경 구축도 매우 어렵다.
따라서 엔드투엔드 테스트는 최소화하는 것이 좋다. 엔드투엔드 테스트는 깨지기 쉽고, 유지보수 및 실행 비용이 높다.
이러한 엔드투엔드 테스트의 단점을 극복할 수 있는 방법으로 소비자 주도 계약 테스트가 효과적이다.
소비자 주도 계약 테스트란, 소비자가 자신이 실제로 서비스의 API를 어떻게 사용할 것인지에 대한 명세를 작성하고, 이 내용을 기반으로 실제 사용 사례에 맞춰 엔드투엔드 테스트를 설계하고 검증하는 방식이다.
즉, 불필요한 테스트 작성을 줄이고 꼭 필요한 시나리오 위주로 테스트를 작성하여 전체적인 테스트 비용을 줄일 수 있는 것이다.
소비자 주도 계약 테스트를 위한 도구로는 Pact와 Spring Cloud Contract 등이 있다.
'기타' 카테고리의 다른 글
CORS( Cross‑Origin Resource Sharing ) 간단 정리 (0) | 2025.05.07 |
---|---|
[MSA] 테스트 범위 (0) | 2025.05.07 |
[MSA] 테스트 유형 (1) | 2025.05.07 |
[MSA] 시간적 결합 (0) | 2025.05.07 |
[MSA] 2페이즈 커밋(2PC) 쓰지 말자 (0) | 2025.05.05 |
댓글