【发布时间】:2020-11-23 16:45:39
【问题描述】:
问题: 我正在使用带有 angular 和 apollo graphQl 的 cypress。我正在尝试模拟图形服务器,因此我使用自定义响应编写测试。这里的问题是所有图形调用都在一个端点上进行,并且 cypress 还没有默认的完整网络支持来区分这些调用。
一个示例场景是:
- 访问 /accounts/account123
- 当调用 api 时,会发出两个图形调用 - 一个查询 getAccountDetails,另一个查询 getVehicles
试过了:
- 每次测试使用一个图形端点的存根。不工作,因为它使用相同的存根所有调用。
- 更改应用程序,以便将查询“随时”附加到 url,我可以在 cypress 中截取它,因此每个查询都有一个唯一的 url。无法更改应用。
- 我唯一的赌注似乎是拦截 XHR 调用并使用它,但我似乎无法让它工作 使用此处概述的 XHR 尝试了所有选项,但没有运气(它只选择最后声明的存根和将其用于所有呼叫)https://github.com/cypress-io/cypress-documentation/issues/122。
这个问题的答案使用 Fetch,因此不适用: Mock specific graphql request in cypress when running e2e tests
有人有什么想法吗?
【问题讨论】: