JavaScript-NightWatch.js-Cucumber:如何处理步骤定义上的返回值
我在一个使用NightwatchJS和Cucumber的项目中工作,在使用自定义命令返回的步骤定义值时遇到问题 我的脚步JavaScript-NightWatch.js-Cucumber:如何处理步骤定义上的返回值,javascript,nightwatch.js,cucumberjs,Javascript,Nightwatch.js,Cucumberjs,我在一个使用NightwatchJS和Cucumber的项目中工作,在使用自定义命令返回的步骤定义值时遇到问题 我的脚步 When('user click on save button', async () => { let referenceResponse = "referenceResponse" referenceResponse = await client.clickOnSaveDraftButtonTask(); console.log("refe
When('user click on save button', async () => {
let referenceResponse = "referenceResponse"
referenceResponse = await client.clickOnSaveDraftButtonTask();
console.log("referenceResponse "+referenceResponse);
});
自定义命令
//clickOnSaveDraftButtonTask.js
module.exports.command = async function () {
const orderDetailsPage = this.page.orderDetailsPageObject();
let responseData = orderDetailsPage
.clickOnSaveButton();
console.log("responseDatas " + responseData);
responseData.then((result) => {
console.log("result " + result);
});
return responseDatas;
};
记录了什么
When user click on save button
responseDatas [object Promise]
√ Passed [equal]: POST == POST
√ Passed [equal]: 201 == 201
√ Passed [strictEqual]: true === true
referenceResponse undefined
result {"reference": "ESXXXXXX"}
问题是我需要恢复步骤定义中的值,以便能够在另一个步骤中验证结果。您应该将要在世界级的其他步骤中使用的数据存储起来。你可以在这里了解更多关于世界级的信息