赛普拉斯增加了API调用的延迟

时间:2018-05-23 19:02:44

标签: cypress

我正在尝试根据两个API调用中的哪一个首先返回的竞争条件来测试错误。为此,我想创建一个赛普拉斯测试,在一个或两个路由之间增加一些延迟。我没有看到有关如何做到这一点的任何记录。有没有简单的方法呢?我尝试了window.fetch,但它并没有真正起作用。

2 个答案:

答案 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