Android Test Station 支持 Cuttlefish 虚拟设备,让您可以在没有实体 Android 设备的情况下运行测试。Cuttlefish 适合测试与硬件无关的功能。在开始使用虚拟设备之前,请按照用户指南安装 Android Test Station。
安装 Cuttlefish 依赖项
运行以下命令以确保加载必要的内核模块:
sudo modprobe -a kvm tun vhost_net vhost_vsock
使用虚拟设备启动 Android Test Station
如需启用虚拟设备,请运行以下命令:
mtt start --max_local_virtual_devices N
N
表示 ATS 可以同时分配的虚拟设备的最大数量。默认数量为 0。
使用虚拟设备运行测试
选择设备
在设备列表上,ATS 会将虚拟设备显示为占位符,而不是其实际序列号。占位符以 HOSTNAME:local-virtual-device-ID 的格式显示。状态是“可用”或“已分配”。“可用”状态占位符表示虚拟设备未运行并且可以分配给测试。
图 1. 选择虚拟设备
添加设备操作
如果您至少选择一个本地虚拟设备,则关联的设备操作应该会自动添加到列表中。操作包含创建虚拟设备所需的 TradeFed 参数和测试资源。
图 2. 虚拟设备的设备操作
设置测试资源
Cuttlefish 虚拟设备需要三项测试资源,即虚拟机工具、映像和 Acloud。在典型的 Cuttlefish build(例如,ci.android.com 上的 aosp_cf_x86_64_phone
)中,虚拟机工具封装在 cvd-host_package.tar.gz
中,映像位于 aosp_cf_x86_64_phone-img-*.zip
中。Acloud 二进制文件内置于 ATS 中,并与所有版本的 Cuttlefish 兼容。您只需出于调试目的更改 Acloud 二进制文件的默认下载网址。
图 3. 虚拟设备测试资源
查看测试运行
设备日志(包括 kernel.log
、host_log.txt
和 launcher.log
)会收集在输出文件文件夹中。点击查看输出文件即可查看。
图 4. 测试运行结果