- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从 Protractor 切换到 Nightwatch.js,我在 Nightwatch 处理 promise 的方式上遇到了一些困难。
举个例子,我正在尝试计算满足给定条件的元素的数量。计数函数位于页面对象中,因此与测试本身分开:
页面对象命令:
countToDoList: function(browser) {
browser.elements('css selector', "input[ng-model='todo.done']", function(result){
return result.value.length;
});
}
和测试中的调用:
'Angular - 1' : function(browser) {
var angular = browser.page.angularPO();
var mainPage = angular.section.main;
angular.openMainPage(browser);
var countToDoBoxes = 0;
countToDoBoxes = mainPage.countToDoList(browser);
console.log("countToDoBoxes = " + countToDoBoxes);
browser.end();
}
这将返回“countToDoBoxes = undefined”。根据我使用 Protractor 的(短期)经验,我认为这是由于函数在传递给“countToDoBoxes”时没有履行 promise 。
有没有办法让它工作?
最佳答案
我找不到 elements
的 API 描述,但这是您的代码,已修改以返回 Bluebird promise 。 (您可以使用您选择的 Promise 库执行类似的操作。)
countToDoList: function(browser) {
return new Promise(function(resolve, reject) {
browser.elements('css selector', "input[ng-model='todo.done']", function(result){
resolve(result.value.length);
});
});
}
关于javascript - 如何用 Nightwatch 履行 promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33607721/
实现的在线 shopify 文档显示了这个例子: POST /admin/orders/#{id}/fulfillments.json { "fulfillment": { "tra
我有检查数组中值的函数 const arr = [10,20,30]; const check = (needle) => { return new Promi
promise.each(function(obj){ obj.doIntensiveWork() .then(function(){ console.log("I A
我正在从 Protractor 切换到 Nightwatch.js,我在 Nightwatch 处理 promise 的方式上遇到了一些困难。 举个例子,我正在尝试计算满足给定条件的元素的数量。计数函
我正在尝试使用 DialogFlow 实现 Webhook 来访问我的应用程序,但每当我发出请求时,它都会返回: POST /webhook 500 INTERNAL SERVER ERROR 来自n
使用 BlueBird promise ,我尝试将 getCredentials 变成一个将作为 getCredentials.then(function() { do this and that }
我正在使用 Dialogflow 和 Actions on Google 开发一个应用程序,该应用程序需要在 Google Assistant 中发送每日生日通知。 我正在关注this documen
对于摩卡测试,我想断言 promise 最终会拒绝。 我不想使用 chai-as-promised。我更愿意只使用 Node 的标准断言模块,并且只使用标准 ES6 Promise。 我想出的最好的就
我想用其他 promise 来履行 promise 。重点是,我真的很想在第一个 promise 实现后立即访问(仍在等待中的)第二个promise。不幸的是,我似乎只能在两个 promise 都实现
我正在使用 Node.js 开发一个使用用户证书的项目。我需要以阻塞方式同步生成它们,但我使用的库(pem)只有异步函数(回调)。我尝试了多种方法来解决这个问题,但我的尝试都没有成功。我的代码如下所示
我试图表达如下内容: it("should use the 'text' mode", () => { let usedMockMode = false; let env = new
我是一名优秀的程序员,十分优秀!