CYPRESS-不再使用cy.intercept()捕获XHR持续时间
Cypress即将弃用cy.route()和cy.server()使用cy.intercept() 这是我的旧代码,它将捕获XHR时间和输出CYPRESS-不再使用cy.intercept()捕获XHR持续时间,cypress,Cypress,Cypress即将弃用cy.route()和cy.server()使用cy.intercept() 这是我的旧代码,它将捕获XHR时间和输出 cy.server() cy.route('POST', api_URL_Live).as('CONS'); cy.wait('@CONS').then((xhr) => { CONSTime = Number(JSON.stringify(xhr.duration));
cy.server()
cy.route('POST', api_URL_Live).as('CONS');
cy.wait('@CONS').then((xhr) => {
CONSTime = Number(JSON.stringify(xhr.duration));
});
这样做效果很好,可以将持续时间记录到一个文件中
不再捕获持续时间的新代码
cy.intercept('POST', api_URL_Live).as('CONS');
cy.wait('@CONS').then((xhr) => {
CONSTime = Number(JSON.stringify(xhr.duration));
});
有人知道为什么这个功能不再工作了吗?有人感谢您的帮助吗?和的API有一些重叠,但不相同
duration
是cy.route
的一个未记录属性,但它确实有效,尽管它没有得到正式支持
因为它没有文档记录,很少在cy.route
中使用,所以在cy.intercept
中没有考虑实现它
您仍然可以使用cy.route
-cy.route
来测量请求的持续时间。route不会被删除,代码会被破坏。一旦cy.intercept
对于大多数常见用例足够稳定,它就很可能被移动到插件
如果要对cy.intercept
执行相同操作,可以使用回调进行测量:
cy.intercept('POST',url,(req)=>{
const startTime=Date.now()
请求回复(res=>{
//测量收到请求和收到响应之间的时间
totalTime=Date.now()-startTime
})
})
有一个打开的功能请求,要求将计时数据添加到
cy.intercept
:如果您记录CONSTime,您会得到什么值。您是否也有任何错误?@Alapands只是“未定义”作为一个值,没有错误