【问题标题】:Understanding Cypress cy.route了解赛普拉斯 cy.route
【发布时间】:2019-08-20 05:54:41
【问题描述】:

我之前用 cy.route 成功地写过断言。但是,编写一个新测试来测试GETPOST 请求的成功(200)响应让我怀疑自己的理解。我反复阅读了相关文档并观看了相关的 cypress 视频,但我的新测试仍然没有按预期运行。

我的代码使用以下模式

cy.server();      
cy.route({method:'POST', url: '/api/**'}).as('call');    

//click the button that triggers the request .   
cy.get('#button').click(); 
cy.wait('@call').then((xhr)=>
    {
        //assert returned status code ===200
    }

);

我目前的理解是cy.route 就像一个事件侦听器,但在这种情况下侦听对匹配 URL 的 POST 请求。

当单击发送请求的按钮时,请求会正常发送,但cy.route 会收到警报并等待(cy.wait)响应。

我的理解正确吗?点击发生的顺序是否重要?也就是说,我不能发送请求然后设置监听器?

【问题讨论】:

  • 是的,你说得对。我遇到了类似的问题。

标签: routes cypress


【解决方案1】:
  1. 是的,cy.route 是一种 xhr 请求的监听器
  2. 是的,顺序很重要,首先我们需要定义侦听器,然后应该发生 xhr 请求。即 cy.route 不跟踪在定义之前发生的 xhr 调用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 2021-08-08
    相关资源
    最近更新 更多