Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

102
Visualizações
Cypress: ejecute todo el conjunto de pruebas varias veces con diferentes datos

He visto varias publicaciones sobre cómo ejecutar una sola prueba con diferentes parámetros. También está documentado aquí .

Sin embargo, no pude encontrar ningún ejemplo de cómo ejecutar todo el conjunto de pruebas, es decir, pruebas en varios archivos en la carpeta cypress/integration varias veces con datos diferentes.

Mi escenario es que quiero agregar diferentes respuestas de una API a la que estoy llamando y ejecutar todos los casos de prueba contra las diferentes respuestas. Entonces, para la primera ejecución, pondría support/index.js :

 beforeEach(() => { cy.intercept("GET", "example/API", { fixture: "fixture1.json" }); });

y para la 2da corrida pondría:

 beforeEach(() => { cy.intercept("GET", "example/API", { fixture: "fixture2.json" }); });

y así. Todos mis casos de prueba son idénticos para diferentes respuestas y espero que tengan el mismo resultado independientemente de los datos devueltos por la API.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Ejecutar una suite con diferentes parámetros

 cypress run --env fixture=fixture1 // or cypress run --env fixture=fixture2

Variables de entorno de referencia

En soporte/index.js

 beforeEach(() => { const fixtureName = `${Cypress.env('fixture')}.json` cy.intercept("GET", "example/API", { fixture: fixtureName }); })

Espero que tengan el mismo resultado independientemente de los datos devueltos por la API ; no estoy seguro de qué significa eso exactamente, pero para mí sugiere que no tiene que preocuparse por cambiar el accesorio.


Si desea que una sola llamada desde la línea de comandos ejecute todo el conjunto, digamos 3 veces con un dispositivo diferente cada vez, considere usar la API del módulo Cypress

En un archivo de script, por ejemplo, /scripts/run-fixtures.js

 const fixtures = ['fixture1.json','fixture2.json','fixture3.json'] const cypress = require('cypress') fixtures.forEach((fixtureName) => { cypress.run({ reporter: 'junit', browser: 'chrome', config: { baseUrl: 'http://localhost:8080', video: true, }, env: { fixture: fixtureName, }, }) })

Ejecútelo con node /scripts/run-fixtures .

support/index.js es el mismo que el anterior.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda