개요
2000MAN 프로젝트는 자동차 예약 및 판매 관리 시스템을 개발했습니다. 이 시스템은 예약 및 판매를 처리하는 SalesSupport 서브시스템과 창고 운영, 지점, 주문 상태를 관리하는 XMAP 서브시스템의 두 가지로 구성되어 있으며, 딜러십 운영을 간소화합니다.
테스트 범위
- UI 테스트: 웹과 모바일에서 UI 요소를 이미지 비교를 통해 검증.
- 기능 테스트: SalesSupport와 XMAP 서브시스템의 핵심 기능을 테스트하여 예약, 판매, 창고 관리가 원활하게 이루어지도록 보장.
- 통합 테스트: SalesSupport와 XMAP 간의 데이터 흐름이 원활한지 검증.
- 환경 설정: 웹 테스트를 위한 Selenium Grid와 iOS 테스트를 위한 EC2 상의 Mac mini를 구성.
도전 과제 및 해결 방안
- 도전 과제 1: 빈번한 업데이트 후 UI의 사소한 변경 사항 감지
해결 방안: 웹 UI 테스트 자동화에는 Selenium, 모바일에는 Detox.js를 사용. OpenCV 및 Resemble.js를 통합하여 정확한 이미지 비교를 수행하며, 수동 검증 후 동적으로 업데이트. - 도전 과제 2: 확장 가능한 테스트 환경 구축
해결 방안: 웹 테스트를 위한 Selenium Grid와 iOS 테스트를 위한 EC2 상의 Mac mini를 설정하여 크로스 플랫폼 테스트를 자동화하고 운영을 간소화.
테스트 결과
- 내부에서 발견된 총 버그 수: 테스트 단계에서 629개의 버그가 식별 및 해결되었습니다.
- 외부에서 발견된 총 버그 수: 배포 후 63개의 버그가 보고되어 비교적 낮은 버그 누출률을 나타냅니다.
- 버그 누출률: 코드 1,000라인당 약 0.5개의 버그로, 높은 수준의 품질 보증을 보여줍니다.
- 결함 밀도: UI 테스트 자동화 및 이미지 비교 기법 개선 후 30% 감소했습니다.
- 코드베이스 크기: 125,800라인.
- 플로우 (매일 실행)
- 평가하다
고객 피드백
“2000MAN 프로젝트의 테스트 접근 방식은 배포 전에 문제를 식별하고 해결하는 데 매우 효과적이었습니다. 이미지 비교 도구를 통해 빈번한 업데이트에도 시스템의 시각적 무결성이 유지되었습니다. 팀의 기술 전문성과 품질에 대한 헌신이 전체 제품의 품질을 크게 향상시켰습니다.”