빅뱅 배포, QA는 어떻게 살아 남았나: GMS 프로젝트 테스트 전략 백서
올리브영이 GMS 물류 시스템 빅뱅 배포에서 Risk Factor 기반 테스트 전략과 Interface Contract Test를 적용해 다중 시스템 연동 환경의 데이터 정합성 리스크 사전 차단
AI 요약
Context
올리브영의 GMS(Global Warehouse Management System)는 기존 물류 시스템을 단계적으로 전환하지 않고 한 번에 전환하는 빅뱅 배포 방식을 채택했다. 백오피스, CBT(Cross-Border Trade), WCS(Warehouse Control System) 등 수많은 연계 시스템이 복잡하게 얽혀 있고, 단 하나의 오류도 전체 시스템 마비로 이어질 수 있는 치명적 리스크 환경이었다.
Technical Solution
- Risk Factor 도출 및 체계화: QA 관점에서 인터페이스 규격 불일치, MQ 메시지 지연·중복, 데이터 정합성 훼손 등을 사전에 식별하고 정리해 테스트 설계의 기초 자료로 활용
- 워크플로우 기반 테스트 계획 수립: 상품→입고→출고→배송 4대 카테고리 중심으로 11개의 Interface Spec을 정의하고, Feature List 기반 기능별 단위 테스트 설계
- 동시성 테스트 도입: 입고·출고 같은 재고 처리 로직에서 동일 상품에 대한 복수 입고 요청이 동시 발생할 시 Race Condition, Deadlock, 데이터 중복 처리 등을 사전 검증
- Interface Contract Test 확대 적용: MQ 기반 메시지와 수신 시스템 DB 간 데이터 타입 불일치, VARCHAR 크기 초과, NULL 제약 조건, ENUM/코드값 미정의 등을 검증해 Silent Failure 사전 차단
- 운영 환경 UAT 및 실시간 모니터링: 실제 WCS 장비 환경에서의 네트워크 오류와 간헐적 출고 확정 실패를 사전 감지하고, Datadog 기반 커스텀 모니터링으로 Kafka 프로듀서의 메시지 미전송(침묵한 실패) 탐지 규칙 수립
Impact
아티클에서 명시된 정량적 수치는 없음.
Key Takeaway
빅뱅 배포 환경에서는 기능 검증을 넘어 인터페이스 계약 검증(Contract Test)과 동시성 테스트를 필수 전략으로 포함해야 하며, 배포 후에도 Silent Failure를 탐지할 수 있는 관측 가능한(Observable) 모니터링 체계가 시스템 안정성의 핵심 기반이 된다.
실천 포인트
Kafka/MQ 기반 다중 시스템 연동 구조에서 QA 업무를 설계할 때, 기능 단위 테스트에 Negative Test와 동시성 테스트를 추가하고, Interface Contract Test로 메시지 필드와 DB 컬럼 간 데이터 타입·크기·NULL 제약을 검증한 후, Datadog 같은 모니터링 도구에서 주요 메시지 흐름의 '0건 알림' 규칙을 설정하면 운영 단계에서 데이터 정합성 장애와 침묵한 실패를 조기에 감지할 수 있다.