我的团队正试图找到一种可读性更强的方法来处理Cypress中的依赖API调用。我们现在有一些这样的代码:
// nested code
cy.request('GET', myUrl).its('body').then(res => {
cy.request('GET', res).its('body').then(subRes => {
cy.request('GET', subRes).its('body').then(subSubRes => {
expect(subSubRes, myMessage).to.eq(myEvaluation);
})
})
})
我们也考虑过这个解决方案,但我认为我们在可读性方面没有得到很多。
// less nested code?
let response;
let subResponse;
cy.request('GET', myUrl).its('body').then(res => {
response = res;
})
cy.then(() => {
cy.request('GET', response).its('body').then(subRes => {
subResponse = subRes;
})
})
cy.then(() => {
cy.request('GET', subResponse).its('body').then(subSubRes => {
expect(subSubRes, myMessage).to.eq(myEvaluation);
})
})
你有没有什么想法来处理这种逻辑,而不进入金字塔?提前感谢!
2条答案
按热度按时间92vpleto1#
事
应该可以。
9lowa7mx2#
请使用Promise resolve:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve