这是我执行登录然后访问用户的代码。
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')
现在它发生得如此之快,如果我不在中间等待 500 毫秒,它会给我一个“失败的 xhr 请求”错误。请参阅下面的屏幕截图。
有人可以建议我如何动态等待直到请求得到解决吗?
最佳答案
Alapan 的答案会起作用,但是如果您知道登录请求是什么样的,您始终可以拦截该请求,然后将您的访问从拦截中链接出来。
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')
关于javascript - 运行 cypress 测试时,当我登录后访问新网址时,页面仅保留在当前网址上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70712934/