
공유 Queue 기반 동적 분배와 대기 시간 단축으로 모바일 BVT 수행 시간을 절반으로 줄인 비결
무신사 Automation QE팀이 모바일 BVT(Build Verification Test) 파이프라인의 효율성을 극대화하기 위해 테스트 자동화 프레임워크 3.0을 구축한 과정을 다룹니다. 고정 시나리오 배정 방식에서 공유 Queue 기반 동적 분배 구조로 전환하고 디바이스 관리를 중앙화하여 execution time을 50% 이상 단축했습니다. 모바일 빌드 검증 속도와 테스트 가동률을 끌어올리고 싶은 개발팀에게 뛰어난 인사이트를 제공합니다.
모바일 앱 BVT나 E2E 테스트 실행 시간이 길어 고민 중인 QE 및 DevOps 엔지니어에게 적극 추천합니다. 고정 배정 방식의 한계를 극복하고 디바이스 자원을 극대화하는 동적 큐 아키텍처 및 세밀한 대기 시간 최적화 기법을 실무에 적용해 보세요.
기존 테스트 자동화 프레임워크 2.0에서는 기기별로 테스트 시나리오 목록이 고정 배정되어 가장 늦게 끝나는 기기에 의해 전체 수행 시간이 결정되었습니다. 또한 새로운 기기를 추가할 때마다 전용 스크립트를 새로 작성해야 하여 관리 부담 및 설정 오류 위험이 존재했습니다.
공유 Queue 방식을 도입해 개별 기기가 작업을 완료하는 즉시 다음 시나리오를 가져가는 동적 분배 구조로 개선했습니다. 또한 디바이스 설정을 중앙 서버로 일원화하고 Slack 알림 수신 방식을 단순화하였으며, 세션 기동 및 탐색 루프의 암묵 대기 시간을 최적화했습니다.
테스트 완료 시간이 iOS는 25분에서 12분으로, Android는 20분에서 10분으로 단축되었으며, 총 기기 소요 시간도 각각 16%, 12% 절감되었습니다. 기기 등록 절차가 단순화되어 기존 4대에서 7~10대까지 파이프라인 확장이 용이해졌습니다.
Trade-off
공유 Queue 도입에도 불구하고 수행 시간 긴 시나리오가 마지막에 남아있을 경우 다른 기기들이 대기하는 병목 현상이 완벽히 사라지지는 않습니다. 또한 중앙 QE 서버에 디바이스 관리 의존성이 생기고 대시보드 및 서버 인프라 유지 관리가 필요합니다.
실행할 전체 테스트 시나리오를 하나의 중앙 큐에 등록하고, 각 기기가 작업 완료 시 동적으로 다음 시나리오를 할당받아 수행하는 구조입니다.
새로운 소프트웨어 빌드나 배포가 완료된 직후 주요 핵심 기능이 정상 동작하는지 검증하는 정기 자동화 테스트입니다.
모바일 Web, Native, Hybrid 애플리케이션의 자동화 테스트를 지원하는 크로스 플랫폼 오픈소스 프레임워크입니다.




