OmniLab Android Test Station (ATS) 是开发者和测试工程师用于自动测试 Android 设备的主要工具。OmniLab ATS 提供了一个界面,用于管理设备、查看结果和运行测试套件,例如兼容性测试套件 (CTS)。
OmniLab ATS 2.0 是对该测试站引擎的一次重大现代化改造。我们将底层基础架构迁移到了 OmniLab,后者是 Google 的现代化高性能平台。通过此次迁移,Android 开发者和测试工程师可以使用 Google 使用的相同强大工具。
我们建议您开始使用 OmniLab ATS 2.0。它通过配置标志提供,让您可以立即受益于性能和稳定性的提升。
OmniLab ATS 2.0 的主要优势
- 现代化基础架构 :利用 OmniLab 平台来提升稳定性和性能。
- 无缝过渡 :Web 界面或核心测试执行工作流不会发生任何变化。
- 面向未来 :与 Google 的统一测试基础架构保持一致,以便更快地采用新功能。
新功能
这些功能可简化您的测试操作:
批量更新测试计划 :您可以通过使用标签过滤测试计划,一次配置多个测试计划。这样,您只需一步即可更新数十个计划中的自定义时间表、测试运行操作和资源,从而缩短手动配置时间。
改进了对多主机和云端部署的支持 :ATS 2.0 优化了测试调度、文件传输和文件缓存,使系统在多种部署模式下都具有强大的功能、高效性和灵活性。
云端编排: ATS 2.0 支持 云端编排,以便在测试运行期间动态预配、 扩缩和管理 Cuttlefish 虚拟设备。
功能比较:ATS 1.0 与 ATS 2.0
| 能力 | ATS 1.0 | ATS 2.0 |
|---|---|---|
| 底层引擎 | Tradefed 和 Tradefed 集群 | OmniLab 平台,Google 标准设备平台 |
| 界面 | MTT 界面 | MTT 界面 |
| 扩缩 | 本地和多主机 | 本地和多主机;针对多主机部署进行了优化 |
| 重试 | 基本重试规则 | 可自定义的重试,高级重试调度 |
| 虚拟设备支持 | 支持本地和云端设备场 | 支持本地和云端设备场 |
| 结果处理 | 基于 Tradefed | 基于 OmniLab ATS(与 CTS 控制台共享) |
| API | 支持 | 支持 |
用户体验变化
虽然大多数变化都是内部的,但请注意以下行为更新:
受密码保护的测试套件(例如安全测试套件 (STS)) :在 ATS 1.0 中,受密码保护的套件是使用 Trade Federation
setup_scripts(例如运行unzip -P ...)提取的。在 OmniLab ATS 2.0 中,服务器会在启动 Tradefed 之前以原生方式处理测试软件包解压缩。对于受密码保护的套件:
- 从设置脚本 中移除手动
unzip -P ...命令。保留解压缩脚本会导致调用错误。 - 直接在测试资源定义 下的密码 字段中输入测试软件包解密密码。
图 1. 在 ATS 2.0 中调整 STS 测试配置。
- 从设置脚本 中移除手动
结果目录 :由于基础架构发生了变化,磁盘上测试结果的输出目录结构已更新。不过,您仍然可以通过测试运行 信息中心访问这些文件。
图 2. 查看输出文件列表。
测试日志 :测试日志结构已发生变化。您可以通过一次调用看到三个日志来源:Tradefed xTS 测试生成的日志(在 ATS 1.0 中也有)、用于设备和测试状态的 OmniLab 服务器日志,以及用于 V2 Mobly 模块的 Mobly 测试日志。
图 3. ATS 2.0 日志来源:Tradefed xTS、OmniLab 服务器和 Mobly 测试日志。
如果您在启用动态下载选项的情况下运行 CTS,OmniLab ATS 会自动触发 MCTS 测试(除了 CTS 测试之外),并且 MCTS 日志也会显示在 Tradefed 日志部分中。
图 4. 由 XTS 动态下载触发的 MCTS 测试。
图 5. 除了 CTS 日志之外,Tradefed 日志部分中还包含 MCTS 日志。
升级流程
升级是基于标志的软件切换,因此无需重新安装或更改硬件。
如需启用新的 OmniLab ATS 2.0,请执行以下操作:
停止当前实例:
mtt stop使用
force_ats_version 2标志启动 OmniLab ATS:mtt start --force_ats_version 2如果您使用的不是最新 build 版本,请添加
--force_update以获取该版本:mtt start --force_ats_version 2 --force_update可选:如果您在使用 ATS 2.0 时遇到问题,可以通过移除
--force_ats_version 2或明确使用--force_ats_version 1暂时恢复到 ATS 1.0:mtt start --force_ats_version 1
过渡时间表
我们将在 2026 年分阶段淘汰 OmniLab ATS 1.0。请相应地规划迁移:
- 2026 年第 1 季度 :ATS 2.0 可供所有开发者和合作伙伴选择使用。
- 2026 年第 2 季度 :ATS 2.0 将成为越来越多开发者和合作伙伴的默认版本。
- 2026 年第 3 季度 :ATS 2.0 将成为所有开发者和合作伙伴的标准版本。
- 2026 年第 4 季度 :旧版 ATS 1.0 将被停用并从正式版 build 中移除。
支持
如果您在升级过程中遇到任何问题,请使用以下资源:
- 使用支持:如需 设置指南和问题排排查,请访问OmniLab Android Test Station。
- 报告问题 :请参阅 bug 报告。