American Express 徽标
Firebase Test Lab for Android 为 American Express 降低了 50% 的应用测试成本

简介

AMEX 移动应用的 Android 版本下载量达到 100 万次, 其信用卡会员使用这款应用来跟踪支出和奖励、查找优惠、 支付账单,并享受应用端专享功能。为了协调频繁的更新, American Express 建立了一个设备实验室,负责在发布应用代码更改之前, 在所有平台上进行测试。


挑战

由于有数十台设备运行不同的 Android 版本, 该实验室很难扩大规模。考虑到设备实验室的吞吐量有限, 添加新测试会降低工作效率, 而且在有新团队成员加入时, 增加的代码更改量会增加更多的负载。

维护设备实验室既耗时又昂贵, 分散了工程师的注意力, 导致他们无法专注于打造能给持卡会员带来 额外价值的增强功能。这些设备通常存在 需要手动干预的问题,往往会迫使团队重新运行整个测试套件。 他们会定期将有问题的设备 从设备实验室中移除, 不过在等待新设备期间,团队经常被迫中断工作。

American Express 徽标

解决方案

在产品的 Alpha 版期间,AMEX 应用的更新频率、 对高质量发布版本的承诺以及工程师的协作意愿 给 Firebase Test Lab 团队创造了 理想的环境。而 American Express 提供了宝贵的反馈, 为打造这款产品的发布版本提供了帮助。 Firebase Test Lab 集成了 American Express 含有数百项插桩测试的 复杂套件。早在 Test Lab 处于初期开发阶段时, American Express 就已经能够将其所有持续集成测试 转移到 Test Lab,成功地 淘汰了其原有设备实验室的绝大部分设备。原本负责维护这些设备的工程师们 转而专注于为信用卡会员开发新功能, 同时编写和运行测试 以确保产品的高品质。

此外,American Express 还能够增加测试数量, 而不必担心拖慢测试套件的执行速度, 也不必费心去为自有设备实验室扩容。这包括 应对新团队成员加入并生成额外的代码更改时, 测试数量的激增。American Express 现在会 针对每项拉取请求运行 1000 多个插桩测试, 相当于每个公开发布版本运行数十万次测试。 运行如此之多的并发测试极大地提高了 他们防范新错误和重复错误的能力, 而这一切都要归功于 Firebase Test Lab 大规模 同时载入测试的能力。

免责声明:实际结果可能会有所不同。


成果

完成的测试量增加 30%,而且用时仅为原本的一半

完整测试套件的执行速度提高 2 倍以上, 添加测试时不会拖慢速度

与内部设备实验室相比,成本降低 50%

American Express 徽标

借助 Firebase Test Lab,American Express 能够针对每个拉取请求执行我们的整个 Android 测试套件。Firebase 负责调节测试基础架构,使我们的工程师可以专注于代码,全心推动应用的改进和测试套件的相应更改。"

- American Express 副总裁及首席工程师 Michael Bailey