Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

227
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!