我正在尝试根据两个API调用中的哪一个首先返回的竞争条件来测试错误。为此,我想创建一个赛普拉斯测试,在一个或两个路由之间增加一些延迟。我没有看到有关如何做到这一点的任何记录。有没有简单的方法呢?我尝试了window.fetch
,但它并没有真正起作用。
答案 0 :(得分:0)
使用Cypress Docs中描述的cy.route()
选项:
cy.server()
cy.route({
method: 'GET',
url: '**/user/adam',
status: 200,
response: {
user: {name: 'adam'}
},
delay: 2000
})
cy.route({
method: 'GET',
url: '**/user/jane',
status: 200,
response: {
user: {name: 'jane'}
},
delay: 0
})
为了使这种情况使用“真实”数据,您可能希望通过将其保存到夹具文件,然后使用该数据来存储路径来简单地记录要延迟的路径的响应。有一个写response to JSON here
的例子答案 1 :(得分:0)
为了记录,将来情况会好转:
Epic - Full Network Layer Stubbing