OmniLab Android Test Station 2.0 升级指南

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.0ATS 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 ... 命令。保留解压缩脚本会导致调用错误。
    • 直接在测试资源定义 下的密码 字段中输入测试软件包解密密码。

    在 ATS 2.0 中调整 STS 测试配置

    图 1. 在 ATS 2.0 中调整 STS 测试配置。

  • 结果目录 :由于基础架构发生了变化,磁盘上测试结果的输出目录结构已更新。不过,您仍然可以通过测试运行 信息中心访问这些文件。

    查看输出文件

    图 2. 查看输出文件列表。

  • 测试日志 :测试日志结构已发生变化。您可以通过一次调用看到三个日志来源:Tradefed xTS 测试生成的日志(在 ATS 1.0 中也有)、用于设备和测试状态的 OmniLab 服务器日志,以及用于 V2 Mobly 模块的 Mobly 测试日志。

    ATS 2.0 日志源

    图 3. ATS 2.0 日志来源:Tradefed xTS、OmniLab 服务器和 Mobly 测试日志。

    如果您在启用动态下载选项的情况下运行 CTS,OmniLab ATS 会自动触发 MCTS 测试(除了 CTS 测试之外),并且 MCTS 日志也会显示在 Tradefed 日志部分中。

    测试列表中的 MCTS 测试

    图 4. 由 XTS 动态下载触发的 MCTS 测试。

    Tradefed 日志部分中的 MCTS 日志

    图 5. 除了 CTS 日志之外,Tradefed 日志部分中还包含 MCTS 日志。

升级流程

升级是基于标志的软件切换,因此无需重新安装或更改硬件。

如需启用新的 OmniLab ATS 2.0,请执行以下操作:

  1. 停止当前实例:

    mtt stop
  2. 使用 force_ats_version 2 标志启动 OmniLab ATS:

    mtt start --force_ats_version 2

    如果您使用的不是最新 build 版本,请添加 --force_update 以获取该版本:

    mtt start --force_ats_version 2 --force_update
  3. 可选:如果您在使用 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 中移除。

支持

如果您在升级过程中遇到任何问题,请使用以下资源: