O OmniLab ATS é uma ferramenta de teste que desenvolvedores e engenheiros de teste do Android podem usar para empregar uma interface do usuário na execução de conjuntos de testes padrão do Android, como o Android Compatibility Test Suite (CTS). Essa ferramenta funciona como uma interface da Web para vários frameworks de teste, como Trade Federation (TF) e Google Mobly. Assim, é possível executar testes do CTS e em vários dispositivos em um conjunto de dispositivos de teste com configuração mínima, além de estabelecer uma programação para executar testes continuamente.
Configurar o ATS do OmniLab
Esta seção explica como instalar e configurar o OmniLab ATS.
O OmniLab ATS usa código-fonte destes locais:
- Código-fonte do OmniLab ATS
- Código-fonte do TradeFed Cluster
Instalar o OmniLab ATS
Siga os requisitos de hardware e software para os conjuntos de testes que você executa.
Os requisitos do CTS estão em source.android.com.
Não há outros requisitos de hardware para o OmniLab ATS, mas recomendamos usar o requisito de host do CTS como ponto de partida.
Há duas maneiras de instalar o OmniLab ATS:
- Execute o programa de instalação.
- Instale manualmente, o que exige a instalação de vários programas e recursos.
Instalar com o programa de instalação
No Ubuntu 20.04 ou versões mais recentes, o programa de instalação instala e configura todos os programas e recursos necessários para executar o OmniLab ATS.
Para usar o programa de instalação:
Execute o programa de instalação:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
Execute
mtt version
para verificar a versão instalada da CLI do OmniLab ATS.
Instalar manualmente
Instalar o Docker
Siga as instruções para instalar o Docker Community Edition (CE) na sua máquina Linux.
Siga as etapas pós-instalação para gerenciar o Docker como um usuário não raiz.
Talvez seja necessário reiniciar a janela do terminal ou sair e fazer login de novo para que as mudanças de permissão entrem em vigor.
Instalar o Python 3
A CLI do OmniLab ATS é verificada com as versões do Python de 3.7 a 3.11.
Para Ubuntu 16.04 ou anterior, primeiro adicione o repositório do Python 3 fazendo uma das seguintes ações:
Execute este comando:
sudo add-apt-repository ppa:deadsnakes/ppa
Crie e instale o repositório da origem.
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
Acessar a CLI do OmniLab ATS
Faça o download do pacote da interface de linha de comando (CLI) aqui.
Iniciar o ATS do OmniLab
Inicie o OmniLab ATS com o seguinte comando:
mtt start
Na primeira vez que a interface é iniciada, ela pode levar alguns minutos para aparecer. A CLI
mostra um URL da Web para acessar a interface em um navegador. Por padrão, o URL da Web é
localhost:8000
. Se necessário, você pode mudar a porta padrão na inicialização com a
flag --port
.
Se uma versão mais recente estiver disponível, você poderá atualizar para a versão atual. Consulte as Notas da versão para conferir os lançamentos mais recentes.
Para atualizar para a versão atual, execute:
mtt start --force_update
Para interromper o app, execute:
mtt stop
Para ver uma lista de outros comandos, use:
mtt --help
Fazer backup e restaurar o banco de dados
Para fazer backup do banco de dados do OmniLab ATS, pare o app e execute o seguinte comando,
que faz backup do banco de dados atual em um arquivo TAR chamado mtt-backup.tar
no
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 app:
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 OmniLab ATS pela primeira vez, o assistente de configuração vai orientar você em algumas etapas para personalizar a ferramenta no seu ambiente. As mudanças feitas aqui podem ser reconfiguradas depois na página "Configurações".
Restaurar um backup de configuração
Se você tiver um arquivo de configuração com backup de outro host do OmniLab ATS, faça upload do arquivo para copiar as configurações modificadas desse host clicando no botão Fazer upload de arquivo.
Figura 1. Como restaurar um backup de configuração.
Definir a conta de serviço padrão
É possível definir uma conta de serviço que o OmniLab ATS 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 conta.
Figura 2. Definir a conta de serviço.
Quando a autenticação da conta de serviço for concluída, o endereço de e-mail da conta vai aparecer no canto superior direito da página. Para mudar a conta de serviço, clique no nome dela, remova a conta padrão atual e faça upload de uma nova chave de conta de serviço.
Figura 3. Mudar a conta de serviço.
Importar conjuntos de configurações
Um conjunto de configurações é um pacote de configurações para executar pacotes de teste, incluindo ações de dispositivo e canais de build relacionados. Os conjuntos de configuração são hospedados em um bucket específico do Google Cloud Storage (GCS). Depois de autenticar o canal de build do GCS com sua Conta do Google, você vai ver uma lista de todos os conjuntos de configuração disponíveis.
Selecione os conjuntos de configuração que você quer adicionar ao host da Test Station e clique em Importar selecionados.
Figura 4. Importar um conjunto de configurações.
Incluir configurações de Wi-Fi
Alguns testes do CTS exigem que o dispositivo se conecte a um ponto de acesso Wi-Fi. Para selecionar sua rede Wi-Fi, insira o SSID do Wi-Fi e a PSK do Wi-Fi (opcional).
Figura 5. Configurações do ponto de acesso Wi-Fi.
Depois de concluir o assistente de configuração, a página será recarregada com as novas configurações aplicadas.
Conectar dispositivo
A depuração USB precisa estar ativada para usar um dispositivo para testes. Para ativar a depuração:
Siga as instruções em Ativar opções do desenvolvedor e depuração.
Se você planeja usar builds de teste do Android pré-carregados com chaves ADB personalizadas, coloque os arquivos
.adb_key
personalizados no diretório~/.android/
.Os arquivos são carregados automaticamente e transmitidos para o ADB para ativar automaticamente a depuração USB depois que o dispositivo é atualizado para dispositivos que executam esses builds.
Conecte o dispositivo à máquina host usando USB.
O dispositivo aparece na guia "Dispositivos ATS do OmniLab" em até um minuto após atualizar a interface da Web. Também é possível conferir o estado dos dispositivos nessa guia.
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 executando um teste. Cada dispositivo pode executar apenas um teste por vez. Portanto, ele precisa concluir o teste atual antes de executar um novo.
Executar um teste
Selecione um teste
O OmniLab ATS vem com um conjunto de configurações do CTS pré-agrupadas. Para executar um desses testes, acesse a guia "Conjuntos de testes" e clique em Executar teste para o teste selecionado.
Figura 7. Selecionar um teste.
Para editar ou adicionar novos testes, consulte Adicionar testes.
Configurar execução do teste
Edite os parâmetros a serem usados para essa execução de teste específica. A maioria dos parâmetros é preenchida automaticamente com valores definidos na configuração de teste selecionada.
Essa etapa pode ser concluída usando os valores padrão, mas você pode mudar qualquer um dos parâmetros, como Max Retry e Command, para atender às suas necessidades.
Figura 8. Configurar uma execução de teste.
Os parâmetros de execução do teste são:
- Nome: nome do conjunto de testes que você quer executar.
- Contagem de execuções: número de vezes que essa execução de teste deve ser executada quando programada. As execuções de teste são programadas usando o Trade Federation, que executa até 20 execuções de teste em paralelo se houver capacidade para isso.
- Máximo de repetições: número máximo de vezes para repetir uma execução de teste se pelo menos um teste falhar. Normalmente, esse valor é definido como 4 a 6 novas 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 Enfileirado por muito tempo, ela será cancelada automaticamente. Especifique o tempo de espera antes do cancelamento aqui. O padrão é 24 horas.
Comando: o comando para executar o conjunto de testes. Você pode inserir outros argumentos de linha de comando aqui. Por exemplo, execute um módulo específico no CTS 8.1 com:
cts-suite -m ShortModuleName
Repetir comando: o comando para repetir um conjunto de testes. Você pode adicionar argumentos extras da linha de comando aqui. Por exemplo, para repetir 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 com o comando inicial. Por isso, confira os parâmetros aceitos no site oficial para o conjunto de testes selecionado.
Execução de teste anterior: se você quiser executar novamente um teste anterior:
Local: se a execução foi iniciada no host atual, insira o ID de execução do teste mostrado ao visualizar os detalhes da execução do teste.
Figura 9. Execução de teste local anterior.
Remoto: se a execução foi iniciada em um host diferente, faça upload do arquivo de resultados do teste. Para isso, selecione Remoto, clique em Fazer upload do arquivo de resultados do teste e selecione um arquivo do seu armazenamento local.
Figura 10. Remover a execução de teste anterior.
Selecione os dispositivos
Clique nas caixas de seleção para selecionar os dispositivos que serão alocados para executar o conjunto de testes. A contagem de fragmentos muda automaticamente para corresponder ao número de dispositivos selecionados.
Figura 11. Selecionando dispositivos.
Para selecionar dispositivos por atributos diferentes dos números de série, insira manualmente "Especificações do dispositivo". Por exemplo, para selecionar três dispositivos cujo nome do produto seja "bramble", insira o seguinte:
product:bramble;product:bramble;product:bramble
Os atributos aceitos são:
- build_id
- device_serial
- device_type
- nome do host
- produto
- product_variant
- sim_state
Todos os dispositivos selecionados precisam estar no estado Disponível para executar o teste. Eles mudam para o estado Alocado quando o teste é executado. Um teste está no estado Em espera enquanto aguarda que os dispositivos fiquem disponíveis.
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 atualização e reinicialização. Para criar novas ações de dispositivo, consulte Criar uma ação de dispositivo.
Figura 12. Ações do dispositivo.
Para adicionar uma ação de dispositivo a um teste, clique em Adicionar nova ação, marque as caixas de seleção das ações que você quer adicionar e clique em Adicionar ações. As ações no dispositivo são realizadas sequencialmente. Você pode arrastar as ações para reordená-las.
Figura 13. Reordenar ações.
Definir recursos de teste
Os recursos de teste são arquivos necessários para executar um teste. Por exemplo, para executar o
CTS, é necessário um arquivo android-cts*.zip
, e para atualizar um dispositivo, é preciso
fornecer a imagem de build.
O URL de download do arquivo ZIP do pacote de testes deve ser o padrão dos links do Google Drive fornecidos aos parceiros. Clique em Procurar para selecionar outro arquivo. Na janela pop-up, é possível inserir um link para download de arquivo, usar um arquivo de um canal de build autenticado ou fazer upload de um arquivo para usar do armazenamento local.
Figura 14. Recursos de teste.
Abaixo está a janela pop-up para selecionar um recurso de teste por um URL da Web. Você pode inserir o link do URL de download e clicar no botão Selecionar para confirmar a seleção.
Figura 15. Testar seletor de recursos: URL da Web.
Se você fez upload de recursos para o Google Drive, o Google Cloud Storage (GCS) ou outros canais, também é possível acessar a guia do canal específico e selecionar recursos lá. Confira um exemplo de como selecionar um recurso do Google Drive.
Figura 16. Teste do seletor de recursos - Google Drive.
Além de selecionar arquivos, os caracteres curinga também são aceitos no campo Nome do arquivo. A documentação está disponível aqui.
Figura 17. Seletor de recursos de teste: compatibilidade com padrões de caracteres curinga.
Também é possível selecionar um arquivo do armazenamento de arquivos local do OmniLab ATS. É possível fazer upload de arquivos para esse armazenamento ou usar diretamente arquivos e diretórios locais.
Figura 18. Testar o seletor de recursos: armazenamento de arquivos local.
Adicionar configurações de nova execução
Você pode programar novas execuções que começam depois que a principal é concluída e carregar os resultados dela, mas usar um dispositivo, ações ou recursos diferentes.
Figura 19. Adicionando configurações de nova execução.
Iniciar um teste
Depois de inserir as informações necessárias para o teste, clique em Iniciar teste. Se todas as informações forem válidas, o teste será iniciado, e você será redirecionado para uma página com os detalhes e o progresso do teste.
Figura 20. Iniciando um teste.
Criar 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, executar o CTS 9.0 todos os dias às 17h. Para criar um novo plano de teste, clique em Criar um novo plano de teste.
Figura 21. Criar um plano de teste.
Configurar plano de teste
Digite o nome do plano de teste e os rótulos que você quer 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 da lista de planos de teste.
- Periódico: o plano de teste programa automaticamente as execuções de teste na programação periódica selecionada. Por exemplo, agendar uma execução de teste todos os dias às 17h.
- Personalizado: o plano de teste agenda automaticamente as execuções de teste com base na expressão cron inserida. Por exemplo,
para programar uma execução de teste todos os dias às 17h, a expressão cron é
0 17 * * *
.
Figura 22. Como configurar um plano de teste.
Adicionar conjuntos de testes
Clique em + Adicionar configuração de execução de teste para adicionar os conjuntos de testes que você quer programar com o plano de teste. Selecione um conjunto de testes no menu suspenso Nome e clique em Próxima etapa. Em seguida, selecione os dispositivos em que você quer executar o teste e clique em Adicionar configuração. É possível adicionar várias configurações a cada plano de teste.
Figura 23. Configurar uma execução de teste.
Adicionar ações do dispositivo
Adicione as ações do dispositivo que você quer executar antes de cada teste. Consulte Adicionar ações do dispositivo para mais detalhes.
Figura 24. Adicionando ações do dispositivo.
Definir recursos de teste
Adicionar recursos de teste a planos de teste é o mesmo que adicioná-los a execuções de teste individuais. Consulte Como definir recursos de teste para mais detalhes.
Figura 25. Definir recursos de teste.
Conferir execuções de teste
Lista de execuções de teste
Confira a lista de execuções de teste programadas na página "Execuções de teste". Clique em Visualizar para conferir mais detalhes sobre uma execução de teste.
Você também pode filtrar a lista inserindo uma string na barra de filtros e pressionando a tecla Enter. É possível usar vários filtros separando-os com uma vírgula. O filtro retorna todas as linhas que contêm o texto exato (sem correspondência de substring) em qualquer coluna, exceto Status e Created.
Um filtro vazio retorna todas as linhas. No momento, não é possível filtrar linhas com valores vazios.
Figura 26. Lista de execuções de teste.
Detalhes da execução do teste
É possível conferir os detalhes de uma execução de teste aqui, como status, registros e resultados.
Figura 27. Detalhes da execução do teste.
Status da execução do 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.
Figura 28. Status da execução do teste.
Os estados de execução de 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 gerou um relatório com os 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 o teste ainda não tiver sido concluído, clique em Cancelar e em Sim na caixa de diálogo de confirmação. As execuções de teste também são canceladas automaticamente se permanecerem no estado Em espera por mais tempo do que o campo queue_timeout_seconds. O cancelamento de um teste em execução Running pode levar alguns minutos para entrar em vigor.
Figura 29. Como cancelar uma execução de teste.
Resultados do teste
Depois que um teste é concluído, os resultados são coletados e mostrados. Clique na seta de cada execução para conferir mais detalhes. Clique em Ver arquivos de saída para conferir os artefatos de teste coletados, como test_result.xml
e test_result_failures.html
.
Figura 30. Resultados da execução do teste.
É possível conferir os registros ativos do host e do Tradefed na guia "Registros".
Figura 31. Guia "Registros".
Os resultados de módulos individuais estão na guia "Resultados do teste".
Figura 32. guia "Resultados do teste".
Para baixar os arquivos usados como recursos de teste, clique em Abrir na guia "Recursos de teste".
Figura 33. Guia "Recursos de teste".
Para conferir os detalhes da execução do teste, como create_time, acesse a guia "Configuração".
Figura 34. Guia "Configuração".
Recursos avançados
Gerenciar arquivos de configuração
O OmniLab ATS usa arquivos de configuração escritos em YAML para carregar opções predefinidas, como testes, canais de build e ações do dispositivo. Confira um exemplo de arquivo de configuração:
// 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 OmniLab ATS, você pode compartilhar a configuração com outros usuários exportando-a como um arquivo. Para fazer isso, acesse a página "Configurações" e clique em Exportar no canto superior direito.
Figura 35. Gerenciamento de arquivos de configuração.
Depois que o arquivo de configuração for baixado, compartilhe-o com outros usuários. Para adicionar o arquivo de configuração à instância do OmniLab ATS, clique em Importar e selecione o arquivo.
Criar uma ação de dispositivo
As ações do dispositivo são usadas para automatizar o processo de configuração. As ações são scripts executados em cada dispositivo em que o teste está sendo executado antes de cada execução, incluindo antes de novas tentativas. Para conferir uma lista de ações disponíveis para dispositivos, acesse 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.
Figura 36. Guia "Ações do dispositivo".
Adicionar uma ação do dispositivo
Clique em Nova ação de dispositivo.
Figura 37. Botão de ação "Novo dispositivo".
Digite um nome e uma descrição.
Figura 38. Nome da ação do dispositivo.
Clique em Adicionar preparador de destino.
Insira o nome completo da classe do preparador de destino da Trade Federation, por exemplo,
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
.Figura 39. Adicionar um preparador de destino.
Uma lista de preparadores de destino disponíveis pode ser encontrada na referência com.android.tradefed.targetprep.
Figura 40. Lista de preparadores de destino.
Adicione as opções que serão usadas com o preparador de destino. Para conferir as opções disponíveis, verifique targetprep no código-fonte de cada preparador de destino no AOSP:
Figura 41. Exemplo de opção de ação.
Para adicionar uma opção, clique em Adicionar opção de preparador de destino e insira os valores obrigatórios.
Figura 42. Exemplo de comando de ação.
Defina os recursos de teste necessários para executar a ação do dispositivo, por exemplo, crie imagens para atualização. Para adicionar uma definição de recurso, clique em Adicionar recurso de teste e preencha os campos obrigatórios. Se você souber onde os arquivos estão localizados, clique em Procurar para fornecer um URL de download padrão. Se os preparadores de destino aceitarem o diretório como recurso de teste, selecione Descompactar. Em seguida, especifique o diretório Destino relativo no diretório de trabalho temporário e os Nomes de arquivos a serem descompactados. Se nenhum nome de arquivo for fornecido, todos os arquivos serão descompactados do recurso de teste.
Figura 43. Recursos de teste de ação.
Clique em Atualizar.
Figura 44. Ação para salvar as mudanças.
Gerenciar testes
Editar um teste
Para editar um teste salvo, acesse a página "Testes" e clique em Editar na linha do teste que você quer modificar. Depois de mudar a configuração de teste, clique em Atualizar.
Figura 45. Edição de 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 adequadas e clique em Criar.
Figura 46. Como criar um teste.
Figura 47. Copiar um teste.
Exportar configurações de host
Depois de configurar um host, é possível exportar as configurações dele para um arquivo. É possível fazer upload desse arquivo para outros hosts e copiar as configurações salvas.
Para exportar as configurações de um host, acesse a página "Configurações" e clique em Exportar no canto superior direito.
Figura 48. Exportar uma configuração de host.
Para importar um arquivo de configuração de host, acesse a página "Configurações" e clique em Importar no canto superior direito.
Figura 49. Importar uma configuração de host.
Usar arquivos e diretórios locais
A partir da versão R11, os arquivos no diretório $HOME/.ats_storage
ficam
acessíveis automaticamente no OmniLab ATS. Copie ou mova um arquivo para esse
diretório. Depois, selecione-o na guia Arquivo local ao programar uma
execução de teste.
cp /path/to/file $HOME/.ats_storage
Figura 50. Selecionar um arquivo no diretório $HOME/.ats_storage
.
É possível montar outros diretórios no armazenamento de arquivos local com a flag --mount_local_path
.
mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2
Figura 51. Outros diretórios montados no armazenamento de arquivos local.
Ativar o modo multi-host
Com o modo de vários hosts, os usuários podem usar um único host controlador do ATS para gerenciar os dispositivos e testes em vários hosts de trabalho do ATS.
Figura 52. Arquitetura do modo de vários hosts.
Para iniciar o controlador do ATS, use o seguinte comando:
mtt start --operation_mode=ON_PREMISE
Verifique se o controlador está acessível em
http://${CONTROLLER_HOSTNAME}:8000
.Para iniciar os workers, use o seguinte comando:
mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
Se a rede não permitir que os hosts se comuniquem entre si, siga as instruções de configuração mais avançadas abaixo no worker do ATS.
Conecte os dois hosts usando túneis SSH. Selecione as portas do servidor principal e de arquivos, por exemplo, 9000 e 9006.
ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
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
Limpeza de arquivos
O limpador de arquivos é um cron job que é executado a cada 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 execução de teste 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 realizada em arquivos ou diretórios e os critérios para selecionar destinos. 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 arquivos com base na data e hora da última modificação. | ttl : vários tipos de expressões de tempo são aceitos, por exemplo, 10m , 2h , 7 days , 4w . Consulte pytimeparse para saber quais formatos são aceitos. |
LAST_ACCESS_TIME | Filtre arquivos com base na data e hora do último acesso. | O mesmo que LAST_MODIFIED_TIME . |
NAME_MATCH | Filtra arquivos com base no nome 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 a CEPs de resultados. |
SYSTEM_AVAILABLE_SPACE | Acionar 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 . |
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 precisam estar localizados no diretório /data
. Se a configuração especificar o diretório de destino como logs
, ele será interpretado como /data/logs
.
Figura 54. Edite a configuração do limpador de arquivos.
Redefinir
Ao clicar em Redefinir configurações, a configuração do limpador de arquivos volta ao estado padrão. Essa ação limpa TODOS os itens personalizados.
Figura 55. Redefinir as configurações do Limpador de arquivos.
Suporte
Relatórios de bugs
Sua contribuição para o OmniLab ATS ajuda a melhorar o desenvolvimento da ferramenta, e queremos sua opinião! Consulte as notas da versão do ATS do OmniLab para mais detalhes sobre a versão mais recente. Para informar bugs ou oferecer sugestões, envie um relatório de bug. Os parceiros devem informar bugs ou sugestões usando os canais de parceiros.