高級行為指南

這是有關如何運行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中的說明進行操作。