Расширенное руководство по ACTS

Это руководство по запуску тестов Android Comms Test Suite (ACTS) .

Получение кода

Самую последнюю версию ACTS можно найти в репозитории Gerrit Android Open Source Project (AOSP) в /platform/tools/test/connectivity/ .

Подробнее о том, как синхронизировать код, см. в разделе Загрузка исходного кода и лаборатория кода для разработчиков Android . При синхронизации кода синхронизируйте ветку master. Не синхронизируйте помеченную сборку.

Обратите внимание, что при загрузке 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 , найденный в <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 без прямой установки пакета. Единственный шаг, который необходимо выполнить, — изменить путь 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.zip от aosp-master на ci.android.com или у вас есть прямой доступ к источнику.

  1. Получите АКТЫ.

    Сборки публикуются. Дополнительные сведения см. в разделе Непрерывная интеграция Android . Вы можете извлечь zip-файлы из сборки на ci.android.com . Найдите цель test_suites_x86_64 .

    Файл acts_test.zip находится на вкладке Артефакты. В этом примере предположим, что 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. Установите АКТС. Выполните следующую команду.

    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 Tool (flash.android.com/) . Дополнительные сведения см. в документации на Android Flash Tool .

Установка SL4A (необязательно, рекомендуется)

Если вы используете устройство со userdebug , у вас есть возможность получить контроль над системными привилегиями вашего устройства с помощью SL4A. Если ваш тест не использует SL4A на устройстве, вы можете установить флаг skip_sl4a в конфигурации ACTS, чтобы отключить эту функцию.

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

Чтобы получить APK SL4A, следуйте инструкциям на Scripting Layer for Android .