Migrar testes de um ambiente de teste padrão para um ambiente de teste personalizado - AWS Device Farm

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Migrar testes de um ambiente de teste padrão para um ambiente de teste personalizado

O guia a seguir explica como alternar de um modo de execução de teste padrão para um modo de execução personalizado. A migração envolve principalmente duas formas diferentes de execução:

  1. Modo padrão: esse modo de execução de teste foi criado principalmente para fornecer aos clientes relatórios granulares e um ambiente totalmente gerenciado.

  2. Modo personalizado: esse modo de execução de teste foi criado para diferentes casos de uso que exigem execuções de teste mais rápidas, a capacidade de levantar e mudar e alcançar a paridade com o ambiente local e streaming de vídeo ao vivo.

Considerações ao migrar

Esta seção lista alguns dos principais casos de uso a serem considerados ao migrar para o modo personalizado:

  1. Velocidade: no modo padrão de execução, o Device Farm analisa os metadados dos testes que você empacotou e carregou usando as instruções de empacotamento de sua estrutura específica. A análise detecta o número de testes em seu pacote. Depois disso, o Device Farm executa cada teste separadamente e apresenta os registros, vídeos e outros artefatos de resultados individualmente para cada teste. No entanto, isso aumenta constantemente o tempo total de execução do end-to-end teste, pois há o pré e o pós-processamento de testes e artefatos de resultados no final do serviço.

    Por outro lado, o modo de execução personalizado não analisa seu pacote de teste; isso significa nenhum pré-processamento e um pós-processamento mínimo para testes ou artefatos de resultados. Isso resulta em tempos totais de end-to-end execução próximos à sua configuração local. Os testes são executados no mesmo formato em que seriam se fossem executados em sua (s) máquina (s) local (s). Os resultados dos testes são os mesmos que você obtém localmente e estão disponíveis para download no final da execução do trabalho.

  2. Personalização ou flexibilidade: o modo padrão de execução analisa seu pacote de teste para detectar o número de testes e, em seguida, executa cada teste separadamente. Observe que não há garantia de que os testes serão executados na ordem especificada. Como resultado, os testes que exigem uma sequência específica de execução podem não funcionar conforme o esperado. Além disso, não há como personalizar o ambiente da máquina host ou passar arquivos de configuração que possam ser necessários para executar seus testes de uma determinada maneira.

    Por outro lado, o modo personalizado permite que você configure o ambiente da máquina host, incluindo a capacidade de instalar software adicional, passar filtros para seus testes, passar arquivos de configuração e controlar a configuração da execução do teste. Ele consegue isso por meio de um arquivo yaml (também chamado de arquivo testspec) que você pode modificar adicionando comandos shell a ele. Esse arquivo yaml é convertido em um script de shell que é executado na máquina host de teste. Você pode salvar vários arquivos yaml e escolher um dinamicamente de acordo com seus requisitos ao agendar uma execução.

  3. Vídeo ao vivo e registro: os modos de execução padrão e personalizado fornecem vídeos e registros para seus testes. No entanto, no modo padrão, você obtém o vídeo e os registros predefinidos de seus testes somente após a conclusão dos testes.

    Por outro lado, o modo personalizado oferece uma transmissão ao vivo do vídeo e dos registros de seus testes no lado do cliente. Além disso, você pode baixar o vídeo e outros artefatos ao final do (s) teste (s).

  4. Suspensão de uso: os seguintes tipos de teste serão descontinuados até o final de dezembro de 2023 no modo de execução padrão:

    • Appium (todos os idiomas)

    • Calabash

    • XCTest

    • UI Automation

    • UI Automator

    • Testes na Web

    • Integrado ao Explorer

    Depois de descontinuado, você não poderá usar essas estruturas no modo padrão. Em vez disso, você pode usar o modo personalizado para os tipos de teste listados acima.

dica

Se seu caso de uso envolver pelo menos um dos fatores acima, é altamente recomendável mudar para o modo de execução personalizado.

Etapas da migração

Para migrar do modo Padrão para o modo Personalizado, faça o seguinte:

  1. Faça login AWS Management Console e abra o console do Device Farm em https://console.aws.amazon.com/devicefarm/.

  2. Escolha seu projeto e, em seguida, inicie uma nova execução de automação.

  3. Faça upload do seu aplicativo (ou selecioneweb app), escolha o tipo de estrutura de teste, faça o upload do pacote de teste e, abaixo do Choose your execution environment parâmetro, escolha a opção paraRun your test in a custom environment.

  4. Por padrão, o arquivo de exemplo de especificação de teste do Device Farm aparecerá para você visualizar e editar. Esse arquivo de exemplo pode ser usado como ponto de partida para testar seus testes no modo de ambiente personalizado. Depois de verificar se seus testes estão funcionando corretamente no console, você pode alterar qualquer uma de suas integrações de API, CLI e pipeline com o Device Farm para usar esse arquivo de especificação de teste como parâmetro ao programar execuções de teste. Para obter informações sobre como adicionar um arquivo de especificação de teste como parâmetro para suas execuções, consulte a seção de testSpecArn parâmetros da ScheduleRun API em nosso guia de API.

Estrutura do Appium

Em um ambiente de teste personalizado, o Device Farm não insere nem substitui nenhum recurso do Appium em seus testes da estrutura do Appium. Você deve especificar os recursos do Appium do teste no arquivo YAML da especificação de teste ou no código de teste.

Instrumentação do Android

Você não precisa fazer alterações a fim de mover os testes de instrumentação do Android para um ambiente de teste personalizado.

iOS XCUITest

Você não precisa fazer alterações a fim de mover os testes iOS XCUITest para um ambiente de teste personalizado.