本指南将介绍如何运行 Android 通讯测试套件 (ACTS) 测试。
获取代码
ACTS 的最新版本可在 Android 开源项目 (AOSP) Gerrit 代码库中的 /platform/tools/test/connectivity/
下找到。
如需详细了解如何同步代码,请参阅下载源代码和 Android 开发者 Codelab。同步代码时,请同步 main 分支。请勿同步带有标记的 build。
请注意,下载 ACTS 时,无需同步整个 Android 代码库。为了仅同步 ACTS,请在运行 repo init
命令后运行以下命令:
repo sync platform/tools/test/connectivity
ACTS 可在 <repo>/tools/test/connectivity/acts/
下找到。
环境设置
为了确保 ACTS 具有进行设置所需的依赖项,请安装以下 Python 3 设置工具:
sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo apt-get install adb fastboot
sudo pip3 install --upgrade pip setuptools # Needed due to an on-going bug.
sudo apt-get install protobuf-compiler
安装 ACTS
setup.py
脚本会安装其余依赖项和 ACTS 本身,此脚本可在以下位置找到:<repo>/tools/test/connectivity/acts/framework
如需在 ACTS 中或借助 ACTS 进行持续开发,请运行以下命令:
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -
如果您只想运行测试,请运行以下命令:
cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -
验证安装
设置完成后,确保您可以在您的终端中使用 act.py
,并将 ACTS 模块导入 Python。例如:
act.py -h usage: act.py [-h] -c <PATH> [--test_args Arg1 Arg2 ... ]
python3 >>> from acts.controllers import android_device >>> device_list = android_device.get_all_instances()
运行但不安装
用户无需安装软件包即可直接运行 ACTS。唯一需要执行的步骤就是修改用于从 <repo>/tools/test/connectivity/acts/framework
导入 ACTS 的 Python 路径。在运行 ACTS 之前,请运行 setup.py install_deps
以安装 ACTS 所需的所有依赖项,但不安装 ACTS。如果您的计算机上有现有的 ACTS 版本,请运行 sudo setup.py uninstall
。
如需运行 ACTS,请使用以下其中一项命令:
cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
ACTS 会输出请求 -c
和 -tc
标志的消息。如需了解详情,请参阅配置 ACTS 测试。
在虚拟环境中设置 ACTS
为了将您安装的 ACTS 与其他已安装的 ACTS 隔离开来,您应在虚拟环境中安装 ACTS。以下步骤假定,您有 ci.android.com 上的 aosp-main
中的 acts_test.zip
,或者您有权直接访问源代码。
获取 ACTS。
各 build 已发布。如需了解详情,请参阅 Android 持续集成。您可以从 ci.android.com 上的某个 build 中提取 zip 文件。查找
test_suites_x86_64
目标。acts_test.zip
文件位于“Artifacts”标签页下。在本示例中,假定acts_test.zip
已下载到/tmp/acts_test.zip
。如果您有权访问源代码,可以使用源代码。
在您的计算机上安装
virtualenv
。如果您还没有安装
virtualenv
,可以使用以下命令进行安装:python3 -m pip install -U --user virtualenv
创建并激活虚拟环境(在本示例中,是在
/tmp/my_virtualenv
中创建)。这样便可确保将新软件包安装到virtualenv
目录中。python3 -m virtualenv /tmp/my_virtualenv
source /tmp/my_virtualenv/bin/activate
安装 ACTS。运行以下命令。
unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
python3 setup.py install
如果您有权直接访问此代码,则可以跳过 unzip 命令:
cd /path/to/acts/framework
python3 setup.py install
从任意位置运行 ACTS。
act.py -c <config> ...
测试运行完毕后离开虚拟环境。
deactivate
刷写 Android 设备(可选)
如果您想获取设备的系统特许控制权,请使用 userdebug
build 刷写设备。
如需刷写设备,请使用 Android 刷写工具 (flash.android.com/)。如需了解更多详情,请参阅 Android 刷写工具的文档。
安装 SL4A(可选但推荐)
如果您使用的是搭载 userdebug
build 的设备,您可以选择使用 SL4A 获取设备的系统特许控制权。如果您的测试不在设备上使用 SL4A,可以在 ACTS 配置中设置 skip_sl4a
标志以停用该功能。
"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]
如需获取 SL4A APK,请按照 Android 脚本层中的说明进行操作。