Executar testes automatizados (Android 11 ou versões mais recentes)

Há duas opções para executar testes automatizados do CTS:

  • A Trade Federation é um app e uma estrutura de teste que permite executar testes na linha de comando. Basicamente, o framework permite anotar testes usando a anotação @Test, e o app encontra e executa esses testes.

  • O OmniLab Android Test Station é um app que permite executar testes em uma GUI.

Nesta página, explicamos como executar testes automatizados usando o Trade Federation. Para instruções sobre como executar testes usando o OmniLab Android Test Harness, consulte OmniLab Android Test Station.

Executar todos os testes automatizados do CTS

O Trade Federation contém o console do CTS, uma interface de linha de comando para executar testes. Para executar todo o pacote de teste automatizado do CTS:

  1. Confira se você seguiu as instruções em Configurar testes automatizados do CTS.
  2. Na estação de trabalho de teste, inicie o console do CTS executando o script cts-tradefed na pasta em que o pacote do CTS foi descompactado:

    ./android-cts/tools/cts-tradefed
    

    O console do CTS mostra um cursor para você digitar comandos do CTS (cts-tradefed >).

  3. O plano de teste cts contém todos os testes automatizados do CTS. Execute o comando a seguir para executar o plano de teste cts:

    run cts
    

    Os testes automatizados do CTS são executados. Observe o seguinte:

    • O Android 13 e versões mais recentes oferecem suporte a testes em vários dispositivos. Esses testes são executados automaticamente apenas quando o sharding é usado. Para mais informações sobre fragmentação, consulte Melhorar o tempo de execução do teste. Se você quiser executar esses testes manualmente, consulte Executar testes em vários dispositivos.

    • Sempre que executar o CTS, pressione ctrl+c para interromper o console do CTS atual e execute-o novamente.

    • Não é possível executar várias versões do CTS em um único host porque cada uma abre com um servidor de código de local aberto (OLC) aberto.

  4. Ver os resultados do teste. Para mais informações, consulte Interpretar resultados do CTS.

  5. Se esta for sua primeira execução de teste, talvez haja testes que falhem devido a problemas fora do seu controle. Por exemplo, uma conexão de rede pode estar lenta ou um sinal de GPS pode estar fraco. Execute (repita) os testes até que todos os módulos sejam concluídos e os números de falhas sejam os mesmos nas duas últimas sessões de repetição:

    run retry --retry session_number`
    
  6. Depois que as falhas de teste forem consistentes em todas as novas tentativas, concentre-se em depurar os testes restantes que falharam. Para informações sobre como resolver problemas com resultados de testes, consulte Triagem de falhas de teste e Solução de problemas de testes do CTS.

Executar o CTS para dispositivos multipantalla

Se o dispositivo estiver executando o Android 11 ou 12 e tiver várias telas, execute o plano de teste cts-foldable separadamente:

run cts-foldable

Os casos de teste aprovados ou reprovados para o modo de tela alternativo são anexados com o valor de display_mode, por exemplo, testcase1[display_mode=0].

Executar testes em vários dispositivos (Android 15 ou versões anteriores)

Execute o comando a seguir para executar o plano de teste cts-multidevice:

run cts-multidevice

Executar planos de teste individuais

Em vez de executar todos os planos de teste de uma só vez, você pode executar planos individuais. Essa opção é útil para economizar tempo e se concentrar em um conjunto específico de testes. Para executar um plano de teste individual:

  1. Identifique o nome do plano de teste que você quer executar com o comando list modules.

  2. Execute o plano de teste:

    run cts --plan test_module_or_plan_name
    

Melhorar o tempo de execução do teste

Se quiser melhorar o tempo de execução dos testes, divida-os em vários dispositivos. O sharding exige que o host conecte pelo menos dois dispositivos, mas seis ou mais são recomendados para eficiência.

Para dividir testes no Android 11 ou em versões mais recentes, execute:

run cts --shard-count number_of_shards

Além disso, antes de executar os testes para validação, você pode melhorar o tempo de execução usando o comando run cts-dev do CTS. Esse comando ignora pré-condições, coleta de informações do dispositivo e todos os verificadores de status do sistema. Ele também executa os testes em apenas uma ABI.