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

228
Visualizações
Ejecutar pruebas de broma en paralelo según una lista de parámetros

En mi caso, tengo un archivo de prueba que contiene unos cientos de pruebas usando broma

 describe('my test-suite', () => { test('test 1', () => { expect(1).toBe(1); }); //another hundred tests... });

Lo que debo hacer ahora es ejecutar estas pruebas para diferentes parámetros, especificados en un archivo de configuración. Más en detalles, en mi caso, el archivo de configuración especifica algunos parámetros externos para servicios externos (piense como parámetros de acceso a la base de datos) e idealmente me gustaría mantener exactamente la misma estructura que ya tengo, ejecutando las mismas pruebas varias veces contra todos estos servicios externos.

Idealmente, debería poder hacer algo como:

 const paramList = [{ name: 'service 1' }, { name: 'service 2' }]; describe('my parallel test-suite', () => { it.each(paramList)("testing against $name", ({name}) => { //just what I had before describe('my test-suite', () => { test('test 1', () => { expect(1).toBe(1); }); //another hundred tests... }); }); });

Idealmente, el siguiente paso sería reemplazar test.each con test.concurrent.each y poder ejecutar mis pruebas en paralelo contra todos los diferentes servicios externos.

Desafortunadamente, con el código (y la versión 27.4.7 de Jest) arriba, lo que obtengo es:

 Cannot nest a describe inside a test. Describe block "my test-suite" cannot run because it is nested within "service service 1". Tests cannot be nested. Test "test 1" cannot run because it is nested within "service service 1".

¿Hay alguna manera de lograr lo que estoy tratando de hacer aquí?

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

0

No puede ejecutar un bloque de descripción en each bucle. Ejecute cada prueba en su propio ciclo y luego funcionará. Algo como esto:

 describe('my parallel test-suite', () => { it.each(paramList)("testing against $name", ({name}) => { expect(1).toBe(1); }); it.each(paramList)("another test against $name", ({name}) => { expect(2).toBe(2); }); //another hundred tests... });
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