我如何等待 Cypress 中的请求加载?

Par*_*z.N 0 javascript api automated-tests httprequest cypress

我正在 Cypress 上编写自动化测试,我想等待页面加载。有一个名为“Availability”的请求,如果该请求以 statusCode:200 传递,则页面会加载。

我已经尝试过这个,但它不起作用:

cy.intercept('POST' , '*/api/Availability/*').as('availability') 

cy.wait('@availability').its('response.statusCode').should('eq' , 200)
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

小智 5

您的页面访问在哪里?

如果在这里的话就不行了

cy.visit(...)
cy.intercept('POST' , '*/api/Availability/*').as('availability') 
cy.wait('@availability').its('response.statusCode').should('eq', 200)
Run Code Online (Sandbox Code Playgroud)

您需要在应用程序发送 api 请求之前设置拦截。

cy.intercept('POST' , '*/api/Availability/*').as('availability') 
cy.visit(...)
cy.wait('@availability').its('response.statusCode').should('eq', 200)
Run Code Online (Sandbox Code Playgroud)