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

257
Views
¿Hay alguna manera de omitir todas las pruebas en una suite si fallan ciertas condiciones: JavaScript Jasmine?

¿Hay alguna manera de omitir todas las pruebas en una suite si fallan ciertas condiciones? Es decir, si la página web no se abre, no tiene sentido ejecutar el resto de las pruebas, porque todas dependen de la apertura de la página web antes de ejecutar cualquier prueba.

Podemos usar la función "pendiente()" para omitir la prueba actual, pero ¿hay alguna manera de omitir todas las pruebas en el conjunto o las pruebas a continuación de inmediato si todas las demás pruebas dependen de que checkCondition sea verdadera?

Intenté agregar pendient() dentro del bloque beforeAll, para tratar de omitir todas las pruebas ya que beforeAll se ejecuta antes que nada.

¡Por favor ayuda! Estoy usando WebdriverIO y Jasmine. ¡Gracias!

 let checkCondition = false; describe(`My Test Suite`, () => { beforeAll(async () => { // EDIT - returnBoolean() is another method that logs into the // page and returns true or false let setCheckCondition = returnBoolean(); if (setCheckCondition) { checkCondition = true; console.log(`in true block`); } else { console.log('Skip tests below'); // HELP <-- since checkCondition is false, all tests below should fail pending(); } }); it(`Test 1`, () => { if (checkCondition != undefined) { console.log("checkCOndition is defined") } else { pending(); } }); it(`Test 2`, () => { if (checkCondition) { // check } else { console.log('Skip this test'); pending(); } }); it(`Test 3`, () => { console.log("skip this test too") }); });
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Si tiene que configurar checkCondition en beforeAll y luego abortar desde allí, parece haber un problema continuo al respecto en github ( https://github.com/jasmine/jasmine/issues/1533 )

De lo contrario, si se puede conocer checkConditon antes de que comience el conjunto de pruebas (no veo por qué no), simplemente puede reemplazar su beforeAll con algo como

 if (!checkCondition) return

O simplemente omita toda la llamada para describe en primer lugar

EDITAR: puede omitir todo el conjunto de pruebas de esa manera:

 let checkCondition = returnBoolean(); if (checkCondition) { describe(`My Test Suite`, () => { it(`Test 1`, () => { // run test 1 normally }); it(`Test 2`, () => { // run test 2 normally }); it(`Test 3`, () => { // run test 3 normally }); }); } else { console.log("checkCondition is false. Skipping all 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!