Cypress : How to get returned value from custom commands ? (Cypress-promise)(Cypress:如何从自定义命令中获取返回值?(柏树-承诺))
本文介绍了Cypress:如何从自定义命令中获取返回值?(柏树-承诺)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在寻找一种方法来获取自定义Cypress命令返回的返回值。
我当前使用的是Cypress和Cypress-Promise库(https://www.npmjs.com/package/cypress-promise)
目前结果为: LOG1=CAR 1 log2=空
我的错误在哪里?
测试文件:
it('Test 1', async function() {
const carName = await promisify(cy.set_typeCarName());
cy.log("log2 = " + carName );
});
模块:
set_typeCarName() {
let carName = "CAR 1";
cy.get('#newSiteCityInput').type(carName);
cy.log("log1 = " + carName);
return carName;
};
Cypress.Commands.add('set_typeCarName',() => {
webnewsite.set_typeCarName();
});
推荐答案
为此,我使用wrap()
返回包含要返回的值的Chainable
。
模块
function foo() {
return cy.wrap('foo');
}
Cypress.Commands.add('foo', foo);
测试文件
cy.foo().then(value => console.log(value)); // foo
因为wrap()
返回Cypress.Chainable
,所以我们可以在命令上调用.then()
。传递给wrap()
的任何内容都将传递给下一个命令。
另请参阅:Cypress wrap() documentation
这篇关于Cypress:如何从自定义命令中获取返回值?(柏树-承诺)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:Cypress:如何从自定义命令中获取返回值?(柏树-承诺)
猜你喜欢
- Quasar 2+Apollo:错误:找不到ID为默认的Apollo客户端。如果您在组件设置之外,请使用ProvideApolloClient() 2022-01-01
- Fetch API 如何获取响应体? 2022-01-01
- 如何使用 JSON 格式的 jQuery AJAX 从 .cfm 页面输出查 2022-01-01
- 使用RSelum从网站(报纸档案)中抓取多个网页 2022-09-06
- Flexslider 箭头未正确显示 2022-01-01
- 400或500级别的HTTP响应 2022-01-01
- addEventListener 在 IE 11 中不起作用 2022-01-01
- 失败的 Canvas 360 jquery 插件 2022-01-01
- Css:将嵌套元素定位在父元素边界之外一点 2022-09-07
- CSS媒体查询(最大高度)不起作用,但为什么? 2022-01-01