【发布时间】:2020-06-17 20:38:43
【问题描述】:
我正在使用 Cypress 测试 Gatsby 应用/网站。它从各种页面对 api 进行多次调用。我们已经决定对所有这些请求进行存根和模拟,因此我们的测试不应该命中我们的实时 API。
如果向我们的任何 API 端点发出的请求没有被存根,我正在寻找一种出现 Cypress 错误的方法,并且我找到了 cy.server 的 force404 配置参数 (docs),它强制执行为任何未存根的路由返回 404。这很好用,但实际上太好了。 Gatsby 在内部使用 XHR 来预加载其他页面(以及其他内容),这会导致所有这些页面也返回 404,从而有效地破坏了应用程序。
有没有办法将cy.server 配置为仅从特定域上未存根的路由返回 404。例如,如果我们的 api 域是api.example.com。有没有办法将cy.server 配置为仅对未存根的api.example.com 的请求返回404,而对其他域或同一域的请求保持不变。
【问题讨论】:
标签: testing server xmlhttprequest cypress stubbing