高级行为指南

这是有关如何运行Android Comms Test Suite (ACTS)测试的指南。

获取代码

最新版本的 ACTS 可以在/platform/tools/test/connectivity/的 Android 开源项目 (AOSP) Gerrit 存储库中找到。

有关如何同步代码的详细信息,请参阅下载源代码Android 开发者代码实验室。同步代码时,同步主分支。不要同步标记的构建。

请注意,下载 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

<repo>/tools/test/connectivity/acts/framework中的setup.py脚本会安装其余的依赖项和 ACTS 本身。

要在 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 ,并在 Python 中导入 ACTS 模块。例如:

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。必须执行的唯一步骤是修改 Python 路径以从<repo>/tools/test/connectivity/acts/framework导入。在运行 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_test.zipaosp-masteracts_test.zip或可以直接访问源代码。

  1. 获取行为。

    构建已发布。有关更多信息,请参阅Android 持续集成。您可以从ci.android.com上的构建中提取 zip 文件。寻找test_suites_x86_64目标。

    acts_test.zip文件位于 Artifacts 选项卡下。对于此示例,假设acts_test.zip已下载到/tmp/acts_test.zip

    如果您有权访问源代码,则可以改用它。

  2. 在你的机器上安装virtualenv

    如果您还没有它,您可以使用以下命令安装virtualenv

    python3 -m pip install -U --user virtualenv
    
  3. 创建并激活虚拟环境(本示例在/tmp/my_virtualenv中)。这可确保新软件包安装在virtualenv目录中。

    python3 -m virtualenv /tmp/my_virtualenv
    source /tmp/my_virtualenv/bin/activate
    
  4. 安装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
    

    如果您可以直接访问代码,则可以跳过解压缩:

    cd /path/to/acts/framework
    python3 setup.py install
    
  5. 从任何地方运行 ACTS。

    act.py -c <config> ...
    
  6. 完成运行测试后离开虚拟环境。

    deactivate
    

刷机 Android 设备(可选)

如果您想获得设备的系统特权控制,请使用userdebug构建刷新设备。

要刷新设备,请使用Android Flash 工具 (flash.android.com/) 。有关更多详细信息,请参阅Android Flash Tool中的文档。

安装 SL4A(可选,推荐)

如果您使用的是带有userdebug版本的设备,您可以选择使用 SL4A 获得设备的系统权限控制。如果您的测试未在设备上使用 SL4A,您可以在 ACTS 配置中设置skip_sl4a标志以禁用该功能。

"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]

要获取 SL4A APK,请按照Scripting Layer for Android中的说明进行操作。