我刚刚在我的 Fedora 工作站上安装了 Protractor 。我的测试在 Windows 7 和 OS X 上运行良好,但在 fedora 上我收到此错误:
Message: Failed: Object [object Object] has no method 'then' Stack: Error: Failed: Object [object Object] has no method 'then' at /usr/lib/node_modules/protractor/node_modules/jasminewd2/index.js:102:16 at [object Object].promise.ControlFlow.runInFrame_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1877:20) at [object Object].promise.Callback_.goog.defineClass.notify (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:2464:25) at [object Object].promise.Promise.notify_ (/usr/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:563:12)
显然工作站之间的差异是巨大的。甚至 Node 也运行在不同的版本(fedora 上为 0.10.36)。但也许有人也有同样的问题?
最佳答案
您收到此错误是因为您在工作站上运行 Protractor 2.0,而在其他计算机上运行 1.x。 Protractor 2.0 has a breaking change删除 element.then
。您需要更新测试以应对此更改。
关于node.js - Protractor 对象 [object Object] 没有方法 'then',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29446853/