Estação de teste do Android

Android Test Station é uma ferramenta de teste que os desenvolvedores e engenheiros de teste do Android podem usar para empregar uma interface de usuário para executar conjuntos de testes padrão do Android, como o Android Compatibility Test Suite (CTS) . Esta ferramenta atua como uma interface web para Trade Federation (TF) , permitindo executar facilmente o CTS em um conjunto de dispositivos de teste com configuração mínima, bem como estabelecer um cronograma para executar testes continuamente.

Configurar a estação de teste Android

Esta seção explica como instalar e configurar o Android Test Station.

A Android Test Station usa código-fonte destes locais:

Instale a estação de teste Android

Siga todos os requisitos de hardware e software para os conjuntos de testes executados.

Os requisitos para CTS são encontrados em source.android.com .

Não há requisitos de hardware adicionais para ATS, mas recomendamos usar os requisitos de host CTS como ponto de partida.

Existem duas maneiras de instalar o Android Test Station:

Instale com o programa instalador

No Ubuntu 20.04+, o programa instalador instala e configura todos os programas e recursos necessários para executar o Android Test Station.

Para usar o programa de instalação:

  1. Execute o programa instalador:

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. Execute mtt version para verificar a versão instalada da CLI do Android Test Station.

Instale manualmente

Instale o Docker
  1. Siga as instruções para instalar o Docker Community Edition (CE) em sua máquina Linux.

  2. Siga as etapas pós-instalação para gerenciar o Docker como um usuário não root .

  3. Pode ser necessário reiniciar a janela do terminal ou sair e fazer login novamente para que as alterações de permissão entrem em vigor.

Instale Python 3

A CLI do Android Test Station é verificada nas versões 3.7 a 3.10 do Python.

Para Ubuntu 16.04 ou anterior, primeiro adicione o repositório para Python 3 seguindo um destes procedimentos:

Para instalar o Python 3, execute estes comandos:

sudo apt-get update
sudo apt install python3 python3-distutils

Para instalar uma versão específica do Python 3 (por exemplo, 3.10), execute estes comandos:

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

Obtenha a CLI da estação de teste do Android

Baixe o pacote da interface de linha de comando (CLI) aqui.

Inicie a estação de teste do Android

Inicie o Android Test Station com o seguinte comando:

mtt start

Na primeira vez que a UI for iniciada, pode demorar alguns minutos para aparecer. A CLI exibe uma URL da web para acessar a UI em um navegador. Por padrão, o URL da web é localhost:8000 . Se necessário, você pode alterar a porta padrão na inicialização com o sinalizador --port .

Se uma versão mais recente estiver disponível, você poderá atualizar para a versão atual. Você pode verificar as Notas de Versão para os lançamentos mais recentes.

Para atualizar para a versão atual, execute:

mtt start --force_update

Para parar o aplicativo, execute:

mtt stop

Para ver uma lista de outros comandos, use:

mtt --help

Faça backup e restaure o banco de dados

Para fazer backup do banco de dados ATS, pare o aplicativo e execute o seguinte comando, que faz backup do banco de dados atual em um arquivo TAR chamado mtt-backup.tar em seu diretório inicial:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

Para restaurar, execute o seguinte comando antes de iniciar o aplicativo:

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

Assistente de configuração

Depois de instalar e executar o Android Test Station pela primeira vez, o Assistente de configuração orienta você por algumas etapas para ajudá-lo a personalizar a ferramenta para seu ambiente. Quaisquer alterações feitas aqui podem ser reconfiguradas posteriormente na página Configurações.

Restaurar um backup de configuração

Se você tiver um backup de um arquivo de configuração de outro host do Android Test Station, poderá fazer upload do arquivo para copiar quaisquer configurações modificadas desse host clicando no botão Carregar arquivo .

Restaurar backup de configuração

Figura 1. Restaurando um backup de configuração.

Definir a conta de serviço padrão

Você pode definir uma conta de serviço que o Android Test Station usa por padrão ao acessar seus recursos (por exemplo, Google Cloud Storage, Google Drive). Para autenticar sua conta de serviço, clique em Fazer upload da chave da conta de serviço e selecione o arquivo de chave JSON da sua conta de serviço.

Definir conta de serviço

Figura 2. Configurando a conta de serviço.

Quando a conta de serviço é autenticada com êxito, o endereço de e-mail da conta aparece no canto superior direito da página. Para alterar a conta de serviço, clique no nome da conta, remova a conta padrão atual e carregue uma nova chave de conta de serviço.

Alterar conta de serviço

Figura 3. Alterando a conta de serviço.

Importar conjuntos de configurações

Um conjunto de configurações é um pacote de configurações para executar conjuntos de testes, incluindo ações de dispositivos relacionadas e canais de construção. Os conjuntos de configurações são hospedados em um bucket específico do Google Cloud Storage (GCS). Depois de autenticar o canal de compilação do GCS com sua conta do Google, você verá uma lista de todos os conjuntos de configurações disponíveis para você.

Selecione quaisquer conjuntos de configurações que você gostaria de adicionar ao host da estação de teste e clique em Import Selected .

Importar conjuntos de configurações

Figura 4. Importando um conjunto de configurações.

Incluir configurações de Wi-Fi

Alguns testes CTS exigem que seu dispositivo se conecte a um ponto de acesso Wi-Fi. Para selecionar sua rede Wi-Fi, insira o WiFi SSID e o WiFi PSK opcional.

Configurações de wifi

Figura 5. Configurações do ponto de acesso Wi-Fi.

Depois de concluir o Assistente de configuração, a página é recarregada com as novas configurações aplicadas.

Conecte um dispositivo

A depuração USB deve estar habilitada para usar um dispositivo para teste. Para ativar a depuração:

  1. Siga as instruções em Habilitar opções de desenvolvedor e depuração .

  2. Se você planeja usar versões de teste do Android pré-carregadas com chaves ADB personalizadas, coloque os arquivos .adb_key personalizados no diretório ~/.android/ .

    Os arquivos são carregados automaticamente e passados ​​​​para o ADB para habilitar automaticamente a depuração USB depois que o dispositivo é atualizado para dispositivos que executam essas compilações.

  3. Conecte o dispositivo à máquina host usando USB.

    O dispositivo aparece na guia Dispositivos da Android Test Station um minuto após a atualização da interface da web. Você também pode visualizar o estado dos dispositivos nesta guia.

    Conecte um dispositivo

    Figura 6. Conectando um dispositivo.

Os diferentes estados do dispositivo são:

  • Disponível – O dispositivo está conectado e pronto para executar um teste.
  • Alocado – O dispositivo está conectado e atualmente executando um teste. Cada dispositivo pode executar apenas um teste por vez, portanto, o dispositivo deve concluir o teste atual antes de executar um novo.

Execute um teste

Selecione um teste

A Android Test Station vem com um conjunto de configurações CTS pré-empacotadas. Para executar um desses testes, acesse a guia Test Suites e clique em Run test para o teste desejado.

Selecione um teste

Figura 7. Selecionando um teste.

Para editar ou adicionar novos testes, consulte Adicionando testes .

Configurar execução de teste

Edite os parâmetros a serem usados ​​para esta execução de teste específica. A maioria dos parâmetros são pré-preenchidos com valores definidos na configuração de teste selecionada.

Esta etapa pode ser concluída usando os valores padrão, mas você pode alterar qualquer um dos parâmetros, como Max Retry e Command , para atender às suas necessidades.

Configurar execução de teste

Figura 8. Configurando uma execução de teste.

Os parâmetros de execução de teste são:

  • Nome - Nome do conjunto de testes que você deseja executar.
  • Run Count - Número de vezes que esta execução de teste deve ser executada quando agendada. As execuções de testes são agendadas usando Trade Federation , que executa até 20 testes em paralelo se houver capacidade para fazê-lo.
  • Max Retry - Número máximo de vezes para tentar novamente uma execução de teste se pelo menos um teste falhar. Geralmente, isso é definido como 4 a 6 tentativas para uma execução completa do CTS para lidar com testes instáveis.
  • Tempo limite da fila – se uma execução de teste permanecer no estado Em fila por muito tempo, ela será automaticamente cancelada. Especifique aqui o tempo de espera antes do cancelamento. O padrão é 24 horas.
  • Comando - O comando para executar o conjunto de testes. Você pode inserir argumentos adicionais de linha de comando aqui. Por exemplo, execute um módulo específico no CTS 8.1 com:

    cts-suite -m ShortModuleName
    
  • Comando de nova tentativa - O comando para tentar novamente um conjunto de testes. Você pode adicionar argumentos de linha de comando adicionais aqui. Por exemplo, para tentar novamente apenas um módulo específico no CTS 8.1, use:

    cts --retry 0 -m ShortModuleName
    

    Os argumentos de nova tentativa podem ser diferentes daqueles disponíveis no comando inicial, portanto, verifique os parâmetros suportados no site oficial do conjunto de testes selecionado.

  • Execução de teste anterior - Se desejar executar novamente uma execução de teste anterior:

    • Local – se a execução foi iniciada no host atual, insira o ID de execução de teste visto ao visualizar os detalhes da execução de teste.

      Execução de teste anterior local

      Figura 9. Teste local anterior.

    • Remoto – Se a execução foi iniciada em um host diferente, carregue o arquivo de resultados do teste selecionando Remoto , clicando em Carregar arquivo de resultados de teste e selecionando um arquivo do seu armazenamento local.

      Execução de teste anterior remoto

      Figura 10. Execução de teste remoto anterior.

Selecione dispositivos

Clique nas caixas de seleção para selecionar os dispositivos a serem alocados para execução do conjunto de testes. A contagem de fragmentos deve mudar automaticamente para corresponder ao número de dispositivos selecionados.

Selecione dispositivos

Figura 11. Seleção de dispositivos.

Para selecionar dispositivos por atributos diferentes dos números de série do dispositivo, você pode inserir manualmente "Especificações do dispositivo". Por exemplo, para selecionar 3 dispositivos cujo nome de produto é “bramble”, insira o seguinte:

product:bramble;product:bramble;product:bramble

Os atributos suportados são:

  • id_de_construção
  • dispositivo_serial
  • tipo de dispositivo
  • nome de anfitrião
  • produtos
  • variante_produto
  • estado_sim

Todos os dispositivos selecionados devem estar no estado Disponível para executar o teste e todos eles mudam para o estado Alocado quando o teste é executado. Uma execução de teste está no estado Em fila enquanto aguarda a disponibilização dos dispositivos.

Adicionar ações do dispositivo

As ações do dispositivo são scripts que podem ser executados antes de cada execução de teste. Algumas ações do dispositivo já vêm configuradas, como piscar e reinicializar. Para criar novas ações de dispositivo, consulte Criar uma nova ação de dispositivo .

Ações do dispositivo

Figura 12. Ações do dispositivo.

Para adicionar uma ação de dispositivo a uma execução de teste, clique em Adicionar nova ação , marque as caixas de seleção das ações a serem adicionadas e clique em Adicionar ação(ões) . As ações do dispositivo são executadas sequencialmente. Você pode reordenar as ações arrastando-as.

Adicionar ações

Figura 13. Reordenando ações.

Definir recursos de teste

Recursos de teste são arquivos necessários para executar uma execução de teste. Por exemplo, executar o CTS requer um arquivo android-cts*.zip , e atualizar um dispositivo exige que você forneça a imagem de compilação.

O URL de download do arquivo zip do conjunto de testes deve ser padronizado com os links do Google Drive fornecidos aos parceiros. Você pode selecionar um arquivo diferente clicando em procurar . Na janela pop-up, você pode inserir um link para download de arquivo, usar um arquivo de um canal de construção autenticado ou fazer upload de um arquivo para usar no armazenamento local.

Recursos de teste

Figura 14. Recursos de teste.

Abaixo está a janela pop-up para selecionar um recurso de teste por um URL da web. Você pode simplesmente inserir o link do URL de download e clicar no botão Selecionar para confirmar a seleção.

Seletor de recursos de teste – URL da Web

Figura 15. Seletor de Recursos de Teste - URL da Web.

Se você carregou recursos para o Google Grive, Google Cloud Storage (GCS) ou outros canais, você também pode navegar até a guia do canal específico e selecionar os recursos lá. Aqui está um exemplo para selecionar um recurso do Google Drive.

Seletor de recursos de teste – Google Drive

Figura 16. Seletor de Recursos de Teste - Google Drive.

Além de apenas selecionar arquivos, caracteres curinga também são suportados no campo Nome do arquivo . A documentação pode ser encontrada aqui .

Seletor de Recursos de Teste - Suporte a Padrão Curinga

Figura 17. Seletor de Recursos de Teste – Suporte ao padrão curinga.

Você também pode selecionar um arquivo do armazenamento de arquivos local do Android Test Station. Você pode fazer upload de arquivos para esse armazenamento ou usar arquivos e diretórios locais diretamente .

Seletor de recursos de teste - armazenamento de arquivos local

Figura 18. Seletor de recursos de teste – armazenamento de arquivos local.

Adicionar configurações de nova execução

Você pode agendar novas execuções que iniciam após a conclusão da execução primária e carregar seus resultados, mas pode usar diferentes dispositivos, ações ou recursos.

Adicionar configurações de nova execução

Figura 19. Adicionando configurações de nova execução.

Iniciar uma execução de teste

Depois de inserir as informações necessárias para a execução do teste, clique em Iniciar execução de teste . Se todas as informações forem válidas, a execução do teste será iniciada e você será redirecionado para uma página para visualizar os detalhes e o progresso da execução do teste.

Iniciar execução de teste

Figura 20. Iniciando uma execução de teste.

Crie um plano de teste

Os planos de teste são usados ​​para criar execuções de teste em uma programação periódica. Por exemplo, executando o CTS 9.0 todos os dias às 17h. Para criar um novo plano de teste, clique em Criar um novo plano de teste .

Criar plano de teste

Figura 21. Criando um plano de teste.

Configurar plano de teste

Insira o nome do plano de teste e os rótulos que deseja adicionar. Em seguida, selecione uma programação para usar.

  • Manual – O plano de teste cria execuções de teste somente quando um usuário clica em Executar plano de teste na página de lista do plano de teste.
  • Periódico – O plano de teste agenda automaticamente execuções de teste no cronograma periódico selecionado. Por exemplo, agendar um teste todos os dias às 17h.
  • Personalizado - O plano de teste agenda automaticamente execuções de teste com base na expressão cron inserida. Por exemplo, para agendar uma execução de teste todos os dias às 17h, a expressão cron é 0 17 * * * .

Configurar plano de teste

Figura 22. Configurando um plano de teste.

Adicionar conjuntos de testes

Adicione conjuntos de testes que você deseja agendar pelo plano de teste clicando em + Adicionar configuração de execução de teste . Selecione um conjunto de testes no menu suspenso Nome e clique em Próxima etapa . Em seguida, selecione os dispositivos nos quais você gostaria de executar o teste e clique em Adicionar configuração . Você pode adicionar diversas configurações para cada plano de teste.

Configurar execução de teste

Figura 23. Configurando uma execução de teste.

Adicionar ações do dispositivo

Adicione as ações do dispositivo que você deseja executar antes de cada execução de teste. Consulte Adicionando ações de dispositivo para obter mais detalhes.

Adicionar ações do dispositivo

Figura 24. Adicionando ações de dispositivo.

Definir recursos de teste

Adicionar recursos de teste a planos de teste é o mesmo que adicioná-los a execuções de testes individuais. Consulte Configurando recursos de teste para obter mais detalhes.

Definir recursos de teste

Figura 25. Configurando recursos de teste.

Ver execuções de teste

Lista de execução de teste

Veja a lista de execuções de testes agendadas na página Execuções de Testes. Clique em Exibir para ver mais detalhes sobre uma execução de teste.

Você também pode filtrar a lista inserindo uma string na barra de filtro e pressionando a tecla Enter . Você pode usar vários filtros separando-os com vírgula. O filtro retorna todas as linhas que contêm o texto exato (sem correspondência de substring) em qualquer coluna, excluindo Status e Criado .

Um filtro vazio retorna todas as linhas. Atualmente não há como filtrar linhas com valores vazios.

Lista de execuções de teste

Figura 26. Lista de execução de teste.

Detalhes da execução de teste

Você pode visualizar os detalhes de uma execução de teste aqui, como status, logs e resultados.

Detalhes da execução de teste

Figura 27. Detalhes da execução do teste.

Status de execução de teste

O progresso de uma execução de teste é mostrado na seção Status. Se houver uma mensagem relacionada, como progresso do download, motivo do cancelamento ou mensagem de erro, ela também será mostrada aqui.

Status da execução de teste

Figura 28. Status da execução do teste.

Os estados de execução do teste são:

  • Pendente – Os recursos necessários estão sendo baixados.
  • Em fila : o teste está pronto para ser executado quando um dispositivo estiver disponível.
  • Em execução – O teste está sendo executado em um dispositivo alocado.
  • Concluído – O teste foi concluído e relatou seus resultados.
  • Cancelado – O teste foi cancelado pelo usuário ou expirou ao tentar encontrar dispositivos disponíveis.
  • Erro - Ocorreu um erro que impediu a execução do teste.

Cancelar uma execução de teste

Se a execução do teste não for concluída, você poderá cancelá-la clicando em Cancelar e em Sim na caixa de diálogo de confirmação. As execuções de teste também serão canceladas automaticamente se permanecerem no estado Em fila por mais tempo que o campo queue_timeout_seconds . O cancelamento de uma execução de teste no estado Em execução pode levar alguns minutos para entrar em vigor.

Cancelar execução de teste

Figura 29. Cancelando uma execução de teste.

Resultados da execução de teste

Após a conclusão de uma execução de teste, os resultados são coletados e exibidos. Você pode visualizar detalhes adicionais clicando na seta de cada execução. Clique em Visualizar arquivos de saída para ver os artefatos de teste coletados, como test_result.xml e test_result_failures.html .

Resultados da execução de teste

Figura 30. Resultados da execução do teste.

Você pode visualizar os registros do host ao vivo e do Tradefed na guia Logs.

Registros de execução de teste

Figura 31. Guia Logs.

Os resultados dos módulos individuais estão na guia Resultados do Teste.

Guia Resultados do Teste

Figura 32. Guia Resultados do Teste.

Você pode fazer download dos arquivos usados ​​como recursos de teste clicando em Abrir na guia Recursos de teste.

Guia Recursos de Teste

Figura 33. Guia Recursos de Teste.

Para ver os detalhes da execução do teste, como create_time , acesse a guia Config.

Guia Configuração de teste

Figura 34. Aba Configuração.

Características avançadas

Gerenciar arquivos de configuração

Android Test Station usa arquivos de configuração escritos em YAML para carregar opções predefinidas, como testes, canais de construção e ações de dispositivos. Um exemplo de arquivo de configuração para algumas opções é mostrado abaixo.

// example_file.yaml
tests:
- id : android.cts.9_0.arm
  name: CTS 9.0 (ARM)
  test_resource_defs:
  - name: android-cts.zip
    default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
    test_resource_type: TEST_PACKAGE
  command: cts
  env_vars:
  - name: TF_PATH
    value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
  - name: LD_LIBRARY_PATH
    value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
  setup_scripts:
  output_file_patterns:
  - android-cts/logs/latest/.*
  - android-cts/results/latest/.*\.html
  - android-cts/results/latest/compatibility_result\..*
  - android-cts/results/latest/logo.png
  - android-cts/results/latest/test_result.xml
  result_file: test_result.xml
  java_properties:
  - name: CTS_ROOT
    value: ${TF_WORK_DIR}
  context_file_dir: android-cts/results/
  context_file_pattern: '[\d_\.]+\.zip'
  retry_command_line: retry --retry 0
  runner_sharding_args: --shard-count ${TF_SHARD_COUNT}

build_channels:
- id: google_drive
  name: Google Drive
  provider_name: Google Drive

device_actions:
- id: flash
  name: Flash
  test_resource_defs:
  - name: bootloader.img
    test_resource_type: DEVICE_IMAGE
  - name: radio.img
    test_resource_type: DEVICE_IMAGE
  - name: img.zip
    test_resource_type: DEVICE_IMAGE
  tradefed_target_preparers:
  - class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
    option_values:
    - name: work-dir
      values:
      - ${TF_WORK_DIR}
    - name: host-setup-command
      values:
      - adb -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL flash bootloader bootloader.img
      - fastboot -s $SERIAL flash radio radio.img
      - fastboot -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL -w update img.zip
      - adb -s $SERIAL wait-for-device
    - name: host-cmd-timeout
      values:
      - 10m

Ao configurar sua instância do Android Test Station, você pode compartilhar sua configuração com outros usuários exportando-a como um arquivo. Para fazer isso, vá para a página Configurações e clique em Exportar no canto superior direito.

Gerenciamento de arquivos de configuração

Figura 35. Gerenciamento de arquivos de configuração.

Após o download do arquivo de configuração, compartilhe-o com outros usuários. Eles podem adicionar o arquivo de configuração à instância do Android Test Station clicando em Importar e selecionando o arquivo de configuração.

Criar uma nova ação de dispositivo

As ações do dispositivo são usadas para automatizar o processo de configuração do dispositivo. Ações são scripts executados em cada dispositivo em que o teste está sendo executado antes de cada execução de teste, inclusive antes de novas tentativas. Para visualizar uma lista de ações de dispositivo disponíveis, vá para a página Configurações e clique na guia Ações do dispositivo. Várias ações do dispositivo já vêm configuradas, como reinicialização e atualização.

Guia Ações do dispositivo

Figura 36. Guia Ações do Dispositivo.

Adicionar uma nova ação de dispositivo

  1. Clique em Nova ação de dispositivo .

    Botão de nova ação do dispositivo

    Figura 37. Novo botão de ação do dispositivo.

  2. Insira um nome e uma descrição.

    Nome da ação do dispositivo

    Figura 38. Nome da ação do dispositivo.

  3. Clique em Incluir preparador de destino .

  4. Insira o nome completo da classe do Trade Federation Target Preparer, por exemplo, com.android.tradefed.targetprep.RunHostCommandTargetPreparer .

    Adicionar preparador de destino

    Figura 39. Adicionando um preparador de destino.

    Uma lista de preparadores de destino disponíveis pode ser encontrada na referência com.android.tradefed.targetprep .

    Lista de Preparadores de Alvo

    Figura 40. Lista do Preparador de Destino.

  5. Adicione quaisquer opções para usar com o preparador de destino. Para visualizar as opções disponíveis, verifique targetprep para obter o código-fonte de cada preparador de destino no AOSP:

    Exemplo de opção de ação

    Figura 41. Exemplo de opção de ação.

  6. Para incluir uma opção, clique em Incluir opção do preparador de destino e insira os valores necessários.

    Exemplo de comando de ação

    Figura 42. Exemplo de comando de ação.

  7. Defina os recursos de teste necessários para executar a ação do dispositivo, por exemplo, criar imagens para flash. Para incluir uma definição de recurso, clique em Incluir Recurso de Teste e preencha os campos obrigatórios. Se você souber onde seus arquivos estão localizados, poderá fornecer um URL de download padrão clicando em procurar . Se os preparadores de destino aceitarem o diretório como recurso de teste, selecione Descompactar . Em seguida, especifique o diretório de destino relativo no diretório de trabalho temporário e os nomes dos arquivos a serem descompactados. Se nenhum nome de arquivo for fornecido, todos os arquivos serão descompactados do recurso de teste.

    Recursos de teste de ação

    Figura 43. Recursos de teste de ação.

  8. Clique em Atualizar .

    Ação Salvar alterações

    Figura 44. Ação para salvar alterações.

Gerenciar testes

Editar um teste

Para editar um teste salvo, acesse a página Testes e clique em Editar na linha do teste que deseja modificar. Após alterar a configuração de teste, clique em Atualizar .

Editar um teste

Figura 45. Editando um teste.

Adicionar um novo teste

Para adicionar um novo teste, acesse a página Testes e clique em Criar um novo teste . Insira as informações apropriadas e clique em Criar .

Crie um teste

Figura 46. Criando um teste.

Copiar um teste

Figura 47. Copiando um teste.

Exportar configurações de host

Depois de configurar um host, você poderá exportar as configurações do host para um arquivo. Você pode fazer upload deste arquivo para outros hosts para copiar as configurações salvas.

Para exportar as configurações de um host, vá para a página Configurações e clique em Exportar no canto superior direito.

Exportando configurações de host

Figura 48. Exportando uma configuração de host.

Para importar um arquivo de configuração de host, vá para a página Configurações e clique em Importar no canto superior direito.

Importando configurações de host

Figura 49. Importando uma configuração de host.

Use arquivos e diretórios locais

A partir da versão R11, os arquivos no diretório $HOME/.ats_storage são automaticamente acessíveis no Android Test Station. Copie ou mova um arquivo para esse diretório e selecione-o na guia Arquivo local ao agendar uma execução de teste.

cp /path/to/file $HOME/.ats_storage

Selecionando um arquivo local

Figura 50. Selecionando um arquivo do diretório $HOME/.ats_storage .

Você pode montar diretórios adicionais no armazenamento de arquivos local com o sinalizador --mount_local_path .

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

Diretórios montados adicionais

Figura 51. Diretórios adicionais montados no armazenamento de arquivos local.

Habilitar modo multi-host

Com o modo Multi-host, os usuários podem usar um único host controlador ATS para gerenciar os dispositivos e testes em vários hosts trabalhadores ATS.

Arquitetura de modo multi-host

Figura 52. Arquitetura em modo multi-host.

  1. Para iniciar o controlador ATS, use o seguinte comando:

    mtt start --operation_mode=ON_PREMISE
    
  2. Verifique se o controlador está acessível em http://${CONTROLLER_HOSTNAME}:8000 .

  3. Para iniciar os trabalhadores, use o seguinte comando:

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

Se a sua rede não permitir que os hosts se comuniquem entre si, você precisará seguir as instruções de configuração mais avançadas abaixo no trabalhador ATS.

  1. Conecte os dois hosts usando túneis SSH. Selecione portas para as portas primária e do servidor de arquivos, por exemplo, 9000 e 9006.

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. Configure e inicie o ATS.

    DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
    socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
    socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
    mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \
                    --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \
                    --operation_mode=ON_PREMISE
    

Limpador de arquivos

O limpador de arquivos é um cron job executado de hora em hora para limpar arquivos com base em configurações definidas pelo usuário. O ATS tem duas configurações padrão para arquivar resultados de testes e excluir arquivos temporários. Este guia explica como personalizar as políticas e configurações para gerenciar seus arquivos com eficiência.

Políticas

Uma política define a operação a ser executada em arquivos ou diretórios e os critérios para selecionar alvos. As operações disponíveis são mostradas na tabela:

Tipo de operação Parâmetros
ARCHIVE remove_file : se true , remova o arquivo após o arquivamento.
DELETE

Os critérios são baseados em atributos de arquivo e informações do sistema. Os critérios disponíveis são mostrados na tabela:

Tipo de critério Descrição Parâmetros
LAST_MODIFIED_TIME Filtre os arquivos com base na data e hora da última modificação. ttl : Vários tipos de expressões de tempo são suportados, por exemplo, 10m , 2h , 7 days , 4w . Consulte pytimeparse para formatos suportados.
LAST_ACCESS_TIME Filtre os arquivos com base na data e hora do último acesso. O mesmo que LAST_MODIFIED_TIME .
NAME_MATCH Filtre arquivos com base em seus nomes usando expressões regulares. pattern : expressão regular, por exemplo, [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip para corresponder o resultado fecha.
SYSTEM_AVAILABLE_SPACE Acione ações com base no espaço disponível no sistema. threshold : aciona a ação quando o espaço disponível fica abaixo do limite, por exemplo, 200 (B), 200KB , 200MB , 200GB , 2TB .

Nova política de limpeza de arquivos

Figura 53. Adicione uma nova política de limpeza de arquivos.

Configurações

Uma configuração combina uma ou mais políticas com diretórios específicos. Os arquivos e diretórios dentro dos diretórios especificados são processados ​​com base nas políticas definidas. As políticas são aplicadas na ordem em que aparecem na configuração.

Todos os diretórios de destino devem estar localizados no diretório /data . Se sua configuração especificar o diretório de destino como logs , ele será interpretado como /data/logs .

Editar configuração do limpador de arquivos

Figura 54. Edite a configuração do limpador de arquivo.

Reiniciar

Clicar em Redefinir configurações reverte a configuração do limpador de arquivos para seu estado padrão. Esta ação limpa TODOS os itens personalizados.

Redefinir as configurações do limpador de arquivos

Figura 55. Redefinir as configurações do limpador de arquivos.

Apoiar

Relatório de erros

Sua contribuição para o Android Test Station ajuda a melhorar o desenvolvimento da ferramenta e queremos sua opinião! Consulte as notas de versão do ATS para obter detalhes sobre a versão mais recente. Para relatar bugs ou oferecer sugestões, envie um relatório de bug . Os parceiros devem reportar bugs ou sugestões através dos seus canais parceiros.