Tengo en mi próxima aplicación 2 páginas: Inicio de sesión, Autos y Auto que se devuelve por identificación. Estando en la página de Autos quiero visitar un auto específico. La URL se ve así: /cars para el auto y /cars/car-id para la página que contiene el auto. Además, cuando se redirige al usuario a la página del automóvil, se produce una solicitud que devuelve los datos sobre el automóvil. Para esto usé en el método de visit de Cypres:
cy.visit('http://localhost:3000/cars/1234') //to go to the car page by id (1234 is the car id) cy.route('GET', 'fixture:car.json').as('getCar') // here i make the request cy.wait('@getCar') Pero al hacer esto obtengo: CypressError: Timed out retrying: cy.wait() timed out waiting 5000ms for the 1st request to the route: 'getCar'. No request ever occurred. , pero si hago clic en un elemento del menú para ir a la página del automóvil, todo funciona: cy.get("a[href*=/car/1234]").click() todo funciona. ¿Por qué visit arroja este error? Y como solucionarlo en mi caso?
El oyente de ruta debe establecerse antes de la visita.
Sustituyendo cy.intercept() que reemplaza a cy.route() después de Cypress v6.
cy.intercept('GET', 'fixture:car.json').as('getCar') // here I listen for the request cy.visit('http://localhost:3000/cars/1234') cy.wait('@getCar')