我正在尝试使用以下函数传递API请求的结果:
Add(someName) {
cy.request ({
method: 'POST',
url: someURL,
body: {
name: someName
}
}).then(function(response){
return response
})
}
然而,当我尝试调用这个函数时,它并没有给予我响应的内容(它给了我Undefined)。我认为这可能与异步性(如果这是一个词的话)或对象的范围有关,因此尝试对响应进行别名化或在函数外部定义一个对象(然后将响应分配给该对象),没有任何运气。
4条答案
按热度按时间oewdyzsn1#
您只需要在
cy.request()
调用中使用return
。返回值类型是Chainer(与所有Cypress命令的类型相同),因此您必须***在其上使用
.then()
cy.request()
后不需要.then()
如果你想要完整的答案,
如何等待结果
如果要等待结果,请使用如下所示的
Cypress.Promise
等待
5lhxktic2#
你应该尝试在函数中返回一些东西:
然后获取返回的值:
58wvjzkj3#
这可以使用cy.wrap来完成!
在下面的例子中,你可以在返回之前做任何事情:
3z6pesqy4#
让我们尝试以下操作:返回此函数的响应,
然后在需要的地方调用它: