gpt4 book ai didi

node.js - 使用 Cucumber 在 Node 中异步执行 JavaScript

转载 作者:行者123 更新时间:2023-12-02 10:59:28 25 4
gpt4 key购买 nike

我正在使用 selenium 编写一个测试套件。该项目处于 Node 状态。我想将代码重构为 BDD/cucumber 模型。看起来就像使用 cucumber-js,当我运行某个功能时,步骤定义内的异步代码不会被执行。

目前我正在使用 Mocha 来管理从 selenium 库返回的所有 Promise 并确保所有异步操作都运行。有一个替代的 Cucumber 库 (gherkin-mocha),它更旧且维护较少,但可能会起作用。

如何在 Cucumber 步骤中运行异步操作?可以同时使用 Mocha 吗?

最佳答案

我发现了问题。

步骤定义方法采用正则表达式和函数。函数参数可以接受需要在执行结束时调用的回调。我以前的代码看起来像这样

this.Given(/I click something/, function(done) {
// do stuff
done();
}

要使用 Promise 和异步行为,请省略“done”参数:

this.Given(/I click something/, function() {
// do stuff
return Promise.resolve();
}

关于node.js - 使用 Cucumber 在 Node 中异步执行 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35852708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com