1
resposta

Ambientes de testes diferentes

Como eu faço para criar uma função para rodar os testes em ambientes diferentes? Por exemplo, no meu trabalho eu tenho o ambiente de testes e produção. Eu teria como setar a URL do ambiente automaticamente antes de rodar os meus testes?

1 resposta

Oii Luciane, como você está?

Peço desculpas pela demora em obter um retorno.

Para realizar essa operação, podemos utilizar o atributo baseUrl, junto com a cláusula --config e configurar dentro do arquivo JSON os scripts responsáveis por executar a URL Base em cada caso diferente.

Sendo assim, suponha que temos os seguintes endereços para os diferentes ambientes:

  • Ambiente de testes: https://alura-fotos.herokuapp.com
  • Ambiente de produção: https://apialurapic.herokuapp.com/flavio/photos

No arquivo package.json podemos configurar esses dois ambientes da seguinte forma:

"scripts": {
  "test": "npx cypress open --config baseUrl=https://alura-fotos.herokuapp.com",
  "test:prod": "npx cypress open --config baseUrl=https://apialurapic.herokuapp.com/flavio/photos"
}

Já nos locais onde utilizamos as cláusulas cy.visit() ou cy.request(), devemos alterar para uma barra (/), para que dessa forma, essas funções reconheçam a URL que foi setada através do parâmetro baseUrl:

 cy.request({
            method: 'GET',
            url: '/'
 })
beforeEach(() => {
        cy.visit('/')
})

Para executar, caso seja no ambiente local, devemos fazer:

npm run test

Caso seja em ambiente de produção:

npm run test:prod

Com isso, automaticamente a URL será setada para cada ambiente que se deseja testar.

Caso queira se aprofundar em relação aos parâmetros que podem ser passados na execução do teste, recomendo a leitura do Guia de Comandos do Cypress run:

O conteúdo recomendado acima está em inglês, o uso da língua inglesa é bem comum na área de tecnologia, mas não se preocupe, caso não tenha afinidade com essa linguagem, recomendo que utilize o tradutor do navegador para uma melhor compressão.

Espero ter ajudado. Fico à disposição.

Grande abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!