2015-04-04 82 views
1

我刚在我的fedora工作站上安装了量角器。我的测试在Windows 7和OS X上运行良好,但在Fedora上出现此错误:量角器对象[对象对象]没有方法'then'

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)

很明显,工作站之间的差异是巨大的。即使节点运行在不同的版本(在Fedora 0.10.36)。但也许有人有同样的问题?

+1

你将需要显示更多的错误...你在两台机器上使用相同的量角器版本吗?如果你想在两台机器上都有相同的行为,你将不得不使用相同版本的所有东西。 – 2015-04-04 14:13:48

+0

显示你的测试,并在哪一行失败? – alecxe 2015-04-04 19:34:52

回答

4

由于您在工作站上运行的是Protractor 2.0,而在其他计算机上运行的是1.x,因此您会遇到此错误。 Protractor 2.0 has a breaking change删除element.then。你需要更新你的测试来解决这个变化。

+1

这是一个猜测,但颇受教育。我认为这是它,尽管我们需要看代码来确定它。 – alecxe 2015-04-05 14:33:54

+0

从1.x迁移到2.x时,我碰到了这个问题。 – 2015-04-05 17:20:08

+0

非常感谢,完全正确!因为我的package.json在量角器版本上非常不明确,所以新安装使用量角器2.0。 – roemer 2015-04-06 18:13:35

相关问题