Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

461
Visualizações
Mientras ejecuto la prueba de Cypress, cuando visito una nueva URL después de iniciar sesión, la página permanece solo en la URL actual

Aquí está mi código para realizar el inicio de sesión y luego visitar a los usuarios.

 cy.visit('http://localhost:3000/') cy.get("#username").clear().invoke('val', "admin") cy.get("#password").clear().invoke('val',"password") cy.get("button[type='submit']").click() //cy.wait(500)-> If I un-comment this line, it works fine cy.visit('/users/new')

Ahora pasa tan rápido que si no pongo una espera de 500ms de por medio, me da error de "solicitud xhr fallida". Vea la captura de pantalla a continuación.

ingrese la descripción de la imagen aquí

¿Alguien puede sugerirme cómo esperar dinámicamente hasta que se resuelva la solicitud?

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

La respuesta de Alapan funcionará, pero si sabe cómo se ve la solicitud de inicio de sesión, siempre puede interceptar eso y luego encadenar su visita fuera de la intercepción.

 cy.intercept('your/login/request/url').as('login'); // modify intercept matcher to match your actual login request cy.visit('http://localhost:3000/') cy.get("#username").clear().invoke('val', "admin") cy.get("#password").clear().invoke('val',"password") cy.get("button[type='submit']").click().wait('@login').visit('/users/new')
about 4 years ago · Juan Pablo Isaza Relatório

0

Cuando haya iniciado sesión en su página web, identifique un elemento y agregue una afirmación de que el elemento es visible después de hacer clic en el botón Enviar.

 cy.visit('http://localhost:3000/') cy.get('#username').clear().invoke('val', 'admin') cy.get('#password').clear().invoke('val', 'password') cy.get("button[type='submit']").click() cy.get('element after login').should('be.visible')

En caso de que la pantalla posterior al inicio de sesión tarde más de 4 segundos en aparecer, también puede agregar tiempos de espera personalizados.

 cy.get('element after login', {timeout: 5000}).should('be.visible')

Además, evite usar cy.wait(500) ya que introducirá descamación en la prueba.

about 4 years ago · Juan Pablo Isaza Relatório

0

Según su código, no hay afirmaciones sobre el inicio de sesión. Debe evitar iniciar sesión a través de la interfaz de usuario si no planea probar esa área y, en su lugar, iniciar sesión con cy.request() , que dependerá de cómo se diseñó el inicio de sesión de su aplicación. . Luego podrá iniciar sesión a través de una solicitud y cy.visit() cualquier página como usuario registrado.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda