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

167
Views
La URL no cambia. Después de iniciar sesión por primera vez, la página se redirige a la página de T&C para aceptar

Login.spec.js

 it.only('TC02 - Login with valid data as reseller ', () => { const id = ut.record(testdata, 2); cy.login(id.username, id.password); cy.title().should('equal', 'Compass - Home'); cy.visit('/users'); cy.logout(); });

LoginPage.js -> desde la carpeta POM

 checkHome() { const path = '/license-agreement'; cy.url().then(($url) => { if($url.includes(path)) { cy.log("Yes") } else { cy.log("No") } }) }

Después, inicie sesión. Estoy llamando al método checkHome para ver si la página se redirige a casa o acuerdo. Si está en la página de acuerdo, aparece el botón Aceptar y hago clic en él.

Pero cuando registro la URL, genera la URL de la página anterior.

Además, esto se soluciona si pongo esperar en el medio. Pero no quiero usar la espera y una solución dinámica para esto.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Para fines de prueba, debe encontrar una manera de evitar este tipo de prueba condicional.

Si no puede, puede incluir el código que llama al método checkHome() . Sin embargo, para evitar el uso de cy.wait() , puede agregar cy.location('pathname').should('include', '/commmon-path/') si sus URL son comunes para la página de inicio o el acuerdo o consulta un elemento común en ambas páginas y agrega un debería (es decir cy.get('.common-element-in-home-and-agreement').should('be.visible') ).

about 4 years ago · Juan Pablo Isaza Report

0

Para esperar en la url, en lugar de .then() intente usar should() con una función para manejar uno u otro, porque debería volver a intentarlo hasta que se cumpla la condición

 cy.url().should( url => { // Assert the url is one of the two expected, retry until passes expect(url).to.satisfy(function(url) { return url.includes('/license-agreement') || url.includes('/home') }) if (url.includes(path)) { cy.log("Yes") } else { cy.log("No") } })
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!