Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기
American Express 로고
Android용 Firebase Test Lab이 American Express 앱 테스트 비용을 50% 절감

소개

Android 다운로드가 100만 회에 달하는 AMEX 모바일 앱은 카드 회원이 지출과 보상을 추적하고, 혜택을 찾고, 청구서를 결제하고, 앱 전용 기능을 이용하는 데 사용됩니다. 잦은 업데이트를 수월하게 만들기 위해 American Express는 출시 전에 모든 플랫폼에서 앱의 코드 변경사항을 테스트하기 위한 기기 실험실을 구축했습니다.


도전

수십 개의 기기에서 다양한 Android 출시를 실행하는 실험실을 확장하기가 어려웠습니다. 새로운 테스트를 추가하면 기기 실험실의 처리량이 제한되어 있기 때문에 생산성이 감소했으며, 새로운 팀 구성원이 가입하면 코드 변경 수가 늘어나기 때문에 더 많은 부하가 추가되었습니다.

기기 실험실을 유지 관리하는 데 시간과 비용이 많이 들었고, 유지 관리를 하지 않는다면 카드 회원을 위한 부가 가치를 창출하기 위한 개선에 집중했을 엔지니어들의 주의가 분산되었습니다. 기기에는 일반적으로 수동 개입이 필요한 문제가 있어서 전체 테스트 모음을 다시 실행해야 하는 경우가 많았습니다. 문제가 있는 기기는 기기 실험실에서 정기적으로 제거되었으며 이러한 기기를 교체할 때 팀에서 새로운 기기의 도착을 기다리는 동안 다운타임이 발생하는 경우가 많았습니다.

American Express 로고

해결책

제품의 알파 기간 동안 AMEX 앱의 업데이트 빈도, 고품질 출시를 위한 노력, 엔지니어의 협업을 위한 의지가 Firebase Test Lab팀에게 이상적인 환경을 제공했습니다. American Express는 제품의 출시 버전을 형성하는 데 도움이 된 귀중한 피드백을 제공했습니다. Firebase Test Lab은 수백 개의 계측 테스트로 구성된 American Express의 복잡한 제품군과 통합되었습니다. Test Lab이 초기 개발 단계에 있는 동안에도 American Express는 지속적인 통합 테스트를 모두 Test Lab으로 전환하고 대부분의 기기 실험실을 사용 중지했습니다. 그 결과 기기를 유지 관리하는 엔지니어가 높은 제품 품질을 보장하기 위해 테스트를 작성하고 실행하는 동시에 카드 회원에게 새로운 기능을 제공하는 데 집중할 수 있게 되었습니다.

또한 American Express는 테스트 묶음 실행의 속도 저하나 직접 개발한 기기 실험실의 확장을 걱정할 필요 없이 테스트 수를 늘릴 수 있었습니다. 여기에는 새로운 팀원이 합류할 때 테스트 수가 급증하는 것을 처리하고 추가 코드 변경을 생성하는 일이 포함됩니다. American Express는 현재 모든 pull 요청에 대해 1,000개 이상의 계측 테스트를 실행하며, 이는 공개 출시당 수십만 개의 테스트에 해당합니다. 동시 테스트를 많이 실행하면 새로운 버그와 반복되는 버그를 방지하는 능력이 크게 향상되며 이는 모두 테스트를 대규모로 병렬화할 수 있는 Firebase Test Lab의 기능 덕분입니다.

면책 조항: 결과가 다를 수 있습니다.


결과

절반의 시간에 30% 더 많은 테스트

테스트를 추가해도 속도 저하 없이 전체 테스트 묶음을 2배 이상 더 빠르게 실행

내부 기기 실험실에 비해 비용을 50% 절감

American Express 로고

Firebase Test Lab은 American Express가 모든 pull 요청에 대해 광범위한 전체 Android 테스트 제품군을 실행할 수 있게 해줍니다. Firebase가 테스트 인프라 확장을 처리하므로 엔지니어는 코드에 집중하여 앱을 개선하고 테스트 제품군에 적절한 변경 사항을 적용할 수 있습니다."

- 마이클 베일리, American Express 부사장 겸 수석 엔지니어