在 browser.get 之后正确使用 browser.waitForAngular

correct use of browser.waitForAngular after browser.get

我是带量角器的用户黄瓜,我有以下规格:

browseToAngularUrl: function (url, callback) {
browser.get('/#' + url)
  .then(function () {
    return browser.waitForAngular();
  })
  .then(callback);

},

但是当我 运行 该步骤失败时 'true' 作为错误描述

我尝试了以下替代方法:

browseToAngularUrl: function (url, callback) {
    browser.get('/#' + url)
      .then(browser.waitForAngular)
      .then(callback);
  },

我收到以下错误:

/usr/local/lib/node_modules/protractor/lib/protractor.js:347
  return self.executeAsyncScript_(
              ^
TypeError: undefined is not a function
    at runWaitForAngularScript (/usr/local/lib/node_modules/protractor/lib/protractor.js:347:19)
    at Protractor.waitForAngular (/usr/local/lib/node_modules/protractor/lib/protractor.js:353:10)

我做错了什么?

来自量角器的大多数调用,例如 browser.get,已经等待 angular 附加。每次量角器发送命令时,它都会等待 $http 和 $timeout 之类的事情完成后再解析。

你确定这里需要 waitForAngular 吗?