试图在Node脚本(protractor.By)中获得Protractor的位置策略

时间:2014-10-18 10:15:02

标签: webdriver protractor cucumberjs

我试图在节点脚本中设置量角器,我希望能够访问位置策略。但是,因为我做了一些愚蠢的事情,我没有在量角器对象上看到它们:

var protractor = require('protractor');

//... Wrapping selenium driver

var by = protractor.By;

//console.log(by) returns '{}'
//and protractor.getInstance(); is returning undefined:  

我如何能够访问选择策略(按元素,模型等)。 (我以这种方式编写脚本以使用CucumberJS,因此,根据当前的设置,我不能简单地直接运行量角器可执行文件)。

1 个答案:

答案 0 :(得分:0)

对于任何关心整合Protractor和CucumberJS的人来说,启发式应该是执行量角器并让量角器执行黄瓜,不是反过来。

我的方法完全错误:量角器和CucumberJS都能够集成并执行其他可执行文件,但是,首先使用cucumberJS似乎是错误的。相反,我建议使用量角器来驱动测试。量角器与CucumberJS集成的文档非常差,很难找到。此外还有一些误导性的信息。

正确方法

请参阅这些example files in the protractor repo,虽然没有据我所知(或甚至承认),但提供了一种似乎是整合两种工具的适当方法。要执行它,必须有protractor config setup appropriately

错误的方法

问题:量角器位置策略似乎不起作用。 protractor.getInstace()未定义。量角器。通过== {}

遵循诸如this之类的例子,在cucumberJS和硒的类似例子中暗示的设置导致量角器未完全初始化。结果是位置策略看起来未定义。可能有一种方法可以使它工作,但经过几天的源代码挖掘我无法轻易找到它。