Guia avançado do ACTS

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

Acessar 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 ver detalhes sobre como sincronizar o código, consulte Fazer o download da origem e o Codelab para desenvolvedores Android. Ao sincronizar o código, sincronize a ramificação principal. Não sincronize um build marcado com tag.

Ao fazer o download do ACTS, não é necessário sincronizar todo o repositório do Android. Para sincronizar apenas o ACTS, depois de executar o comando repo init, execute:

repo sync platform/tools/test/connectivity

Os ACTS podem ser encontrados em <repo>/tools/test/connectivity/acts/.

Configuração do ambiente

Para garantir que o ACTS tenha as dependências necessárias para a 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

Instalar o ACTS

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 ACTS ou com ele, execute o seguinte comando:

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

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

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

Verificar a instalação

Após a configuração, verifique se é possível usar act.py no seu terminal e importar módulos ACTS no 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()

Executar sem instalar

Os usuários podem executar o ACTS sem instalar o pacote diretamente. A única etapa que precisa ser realizada é 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 houver uma versão do ACTS na 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
    

O ACTS emite mensagens que solicitam as sinalizações -c e -tc. Para mais informações, consulte Como configurar testes ACTS.

Configurar o ACTS em um ambiente virtual

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

  1. Acessar o ACTS.

    Os builds são publicados. Para ver mais informações, consulte Integração contínua do Android. Você pode extrair arquivos ZIP de um build 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 o download de acts_test.zip tenha sido feito em /tmp/acts_test.zip.

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

  2. Instale o virtualenv na sua máquina.

    Instale 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 o ACTS. Execute o comando a seguir.

    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, pule a etapa de 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 quando terminar de executar os testes.

    deactivate
    

Atualizar o dispositivo Android (opcional)

Se você quiser ter controle privilegiado do sistema do dispositivo, atualize-o com um build userdebug.

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

Instalar o SL4A (opcional, recomendado)

Se você estiver usando um dispositivo com um build userdebug, terá a opção de receber o controle de privilégios do sistema do dispositivo usando o SL4A. Se o teste não usa o SL4A no dispositivo, defina a flag skip_sl4a na configuração do ACTS para desativar o recurso.

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

Para fazer o download do APK SL4A, siga as instruções em Camada de script para Android (link em inglês).