Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

146
Vistas
¿Por qué mi prueba de broma de una declaración booleana simple toma mucho más tiempo que la consola?

Tengo una función, llamémosla generarmovimiento que devuelve un valor aleatorio en un tablero de 10 x 10. Hay 100 valores posibles. generarMove debe verificar que su movimiento aleatorio no se realice antes de devolver el movimiento elegido.

En la consola, es muy fácil para mí probar esto llamando a la función 99 veces y haciendo una matriz de todos los movimientos.

es decir.

 const alreadyTaken = []; for (let i=0;i<99;i++) { alreadyTaken.push(generateMove()); }

Luego puedo hacer un movimiento final llamando a generarMove nuevamente y asignándolo a una variable, es decir. const last = generateMove();

Para verificar si el último movimiento está incluido en la matriz de los otros 99 valores posibles, uso const isIncluded = alreadyTaken.includes(last) , que si lo registro en la consola correctamente, registra false

Estoy tratando de hacer exactamente lo mismo en una función de prueba Jest, es decir.

 test('ai does not hit places that were already hit', () => { const alreadyPlayed = []; for (let i=0;i<99;i++) { alreadyPlayed.push(generateMove()); } const last = generateMove(); const isIncluded = alreadyPlayed.includes(last); expect(isIncluded).toEqual(false); })

que debería ser bastante simple, ¿verdad? todo el trabajo pesado se ha hecho y la variable isIncluded debe ser un false booleano simple, que es el único valor que Jest tiene que lograr, pero sigue fallando y agotando el tiempo de prueba.

Intenté poner el bucle y otro código fuera de la función 'prueba' y no ayuda: todo el código está dentro de un bloque de descripción, sin embargo, si eso es relevante.

¿Alguien sabe por qué Jest falla? ¿No puede manejar bucles for, etc. dentro de conjuntos de pruebas?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda