小编Enr*_*eda的帖子

如何用Nightwatch履行承诺

我正在从量角器切换到Nightwatch.js,我在使用Nightwatch处理承诺的方式时遇到了一些困难.

举个例子,我试图计算满足给定标准的元素数量.count函数位于页面对象中,因此与测试本身分开:

页面对象命令:

    countToDoList: function(browser) {
        browser.elements('css selector', "input[ng-model='todo.done']", function(result){
            return result.value.length;
        });
    }
Run Code Online (Sandbox Code Playgroud)

和测试中的电话:

'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();
}
Run Code Online (Sandbox Code Playgroud)

这将返回"countToDoBoxes = undefined".基于我对Protractor的(短期)经验,我认为这是由于函数没有履行承诺,当它传递给"countToDoBoxes"时.

有没有办法让这项工作?

javascript promise nightwatch.js

2
推荐指数
1
解决办法
3758
查看次数

标签 统计

javascript ×1

nightwatch.js ×1

promise ×1