Adicione testes end-to-end Cypress ao seu aplicativo Amplify - AWS AmplifyHospedagem

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á.

Adicione testes end-to-end Cypress ao seu aplicativo Amplify

Você pode executar testes end-to-end (E2E) na fase de teste do seu aplicativo Amplify para catch regressões antes de enviar o código para a produção. A fase de teste pode ser configurada na especificação de construção YML. Atualmente, você pode executar somente a estrutura de teste do Cypress durante uma compilação.

Tutorial: Configurar o end-to-end teste ados com o Cypress

O Cypress é uma estrutura JavaScript baseada que permite executar testes E2E em um navegador. Este tutorial demonstra como configurar testes E2E do zero.

Adicione testes ao seu aplicativo Amplify existente

Você pode usar a etapa de teste para executar qualquer comando de teste no momento da compilação. Para testes E2E, o Amplify Hosting oferece uma integração mais profunda com o Cypress, que permite gerar um relatório de interface do usuário para seus testes. Para adicionar testes do Cypress a um aplicativo existente, atualize suas configurações deamplify.yml compilação com os seguintes valores.

test: phases: preTest: commands: - npm ci - npm install wait-on - npm install pm2 - npm install mocha@5.2.0 mochawesome mochawesome-merge mochawesome-report-generator - npx pm2 start npm -- start - 'npx wait-on --timeout 60 http://localhost:3000' test: commands: - 'npx cypress run --reporter mochawesome --reporter-options "reportDir=cypress/report/mochawesome-report,overwrite=false,html=false,json=true,timestamp=mmddyyyy_HHMMss"' postTest: commands: - npx mochawesome-merge cypress/report/mochawesome-report/mochawesome*.json > cypress/report/mochawesome.json - npx pm2 kill artifacts: baseDirectory: cypress configFilePath: '**/mochawesome.json' files: - '**/*.png' - '**/*.mp4'
  • PreTest - Instale todas as dependências necessárias para executar os testes do Cypress. O Amplify Hosting usa o mochaawesome para gerar um relatório para ver os resultados do teste e esperar para configurar o servidor localhost durante a compilação.

  • test - Execute comandos cypress para executar testes usando mochawesome.

  • PostTest - O relatório mochawesome é gerado a partir da saída JSON.

  • artifacts>BaseDirectory - O diretório a partir do qual os testes são executados.

  • artefatos>configFilePath - Os dados do relatório de teste gerados.

  • artefatos>arquivos - Os artefatos gerados (capturas de tela e vídeos) estão disponíveis para download.

Desativando testes

Depois que a configuração de “teste” for adicionada às suas configurações deamplify.yml compilação, a etapa de teste será executada para cada compilação, em cada ramificação. Se você quiser desabilitar globalmente a execução de testes ou apenas executar testes para ramificações específicas, você pode usar a variável deUSER_DISABLE_TESTS ambiente para fazer isso sem modificar suas configurações de compilação.

Para desabilitar globalmente os testes para todas as filiais, adicione a variável deUSER_DISABLE_TESTS ambiente com um valor detrue para todas as filiais. No exemplo a seguir, os testes estão desativados para todas as filiais.

Para desativar os testes de uma ramificação específica, adicione a variável deUSER_DISABLE_TESTS ambiente com um valor defalse para todas as ramificações e, em seguida, adicione uma substituição para cada ramificação que você gostaria de desabilitar com um valor detrue. No exemplo a seguir, os testes são desativados na ramificação “principal” e habilitados para todas as outras ramificações.

Desabilitar os testes com essa variável fará com que a etapa de teste seja ignorada completamente durante uma compilação. Para reativar os testes, defina esse valor comofalse ou exclua a variável de ambiente.