Guia ACTS avançado

Este é um guia sobre como executar testes do Android Comms Test Suite (ACTS) .

Obtendo o código

A versão mais atualizada do ACTS pode ser encontrada no repositório Gerrit do Android Open Source Project (AOSP) em /platform/tools/test/connectivity/ .

Para obter detalhes sobre como sincronizar o código, consulte Fazendo download do código-fonte e do Codelab do desenvolvedor Android . Ao sincronizar o código, sincronize o branch principal. Não sincronize uma compilação marcada.

Observe que ao baixar o ACTS, você não precisa sincronizar todo o repositório do Android. Para sincronizar apenas ACTS, após executar o comando repo init , execute:

repo sync platform/tools/test/connectivity

ACTS pode ser encontrado em <repo>/tools/test/connectivity/acts/ .

Configuração do ambiente

Para garantir que o ACTS tenha as dependências necessárias para configuração, instale as seguintes ferramentas de configuração do 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

Instalando ATOS

O script setup.py encontrado em <repo>/tools/test/connectivity/acts/framework instala o restante das dependências e o próprio ACTS.

Para desenvolvimento contínuo no ou com ACTS, execute o seguinte comando:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -

Se você quiser executar apenas testes, execute este comando:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -

Verificando instalação

Após a configuração, certifique-se de usar act.py em seu terminal e importar módulos ACTS em Python. Por exemplo:

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()

Executando sem instalar

Os usuários podem executar o ACTS sem instalar o pacote diretamente. A única etapa que deve ser executada é modificar o caminho do Python para importar de <repo>/tools/test/connectivity/acts/framework . Antes de executar o ACTS, execute setup.py install_deps para instalar todas as dependências necessárias pelo ACTS sem instalar o ACTS. Se uma versão existente do ACTS estiver em sua máquina, execute sudo setup.py uninstall .

Para executar o ACTS, use um dos seguintes comandos:

  • cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
    
  • export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
    

ACTS gera mensagens solicitando sinalizadores -c e -tc . Para obter mais informações, consulte Configurando testes ACTS .

Configurando o ACTS em um ambiente virtual

Para isolar sua instalação de outras instalações do ACTS, você deve instalar o ACTS em um ambiente virtual. As etapas a seguir pressupõem que você tenha acts_test.zip do aosp-main em ci.android.com ou tenha acesso direto à fonte.

  1. Obtenha ATOS.

    As compilações são publicadas. Para obter mais informações, consulte Integração contínua do Android . Você pode extrair arquivos zip de uma compilação em ci.android.com . Procure o destino test_suites_x86_64 .

    O arquivo acts_test.zip está na guia Artefatos. Para este exemplo, suponha que acts_test.zip tenha sido baixado para /tmp/acts_test.zip .

    Se você tiver acesso ao código-fonte, poderá usá-lo.

  2. Instale virtualenv em sua máquina.

    Se ainda não o fez, você pode instalar virtualenv usando:

    python3 -m pip install -U --user virtualenv
    
  3. Crie e ative o ambiente virtual (em /tmp/my_virtualenv para este exemplo). Isso garante que novos pacotes sejam instalados no diretório virtualenv .

    python3 -m virtualenv /tmp/my_virtualenv
    source /tmp/my_virtualenv/bin/activate
    
  4. Instale ATOS. Execute o seguinte comando.

    unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
    cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
    python3 setup.py install
    

    Se você tiver acesso direto ao código, pode pular a descompactação:

    cd /path/to/acts/framework
    python3 setup.py install
    
  5. Execute o ACTS de qualquer lugar.

    act.py -c <config> ...
    
  6. Saia do ambiente virtual ao terminar de executar os testes.

    deactivate
    

Atualizando o dispositivo Android (opcional)

Se você deseja obter controle privilegiado do sistema do dispositivo, atualize o dispositivo com uma compilação userdebug .

Para atualizar o dispositivo, use a ferramenta Android Flash (flash.android.com/) . Para mais detalhes, consulte a documentação em Android Flash Tool .

Instalando SL4A (opcional, recomendado)

Se estiver usando um dispositivo com uma compilação userdebug , você terá a opção de obter o controle de privilégios do sistema do seu dispositivo usando SL4A. Se o seu teste não usar SL4A no dispositivo, você poderá definir o sinalizador skip_sl4a na configuração do ACTS para desabilitar o recurso.

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

Para obter o APK SL4A, siga as instruções em Camada de script para Android .