如何配置Protractor(JS)以在Microsoft Edge中运行测试?

时间:2017-12-19 16:57:05

标签: javascript selenium selenium-webdriver protractor microsoft-edge

我想将我的protractor.conf.js设置为在Edge中而不是在Chrome中运行测试。设置此

capabilities: {
    'browserName': 'MicrosoftEdge'
}

导致SessionNotCreatedError: Unable to create new service: EdgeDriverService的错误代码为199.我从Microsoft's website下载了我的Edge版本的MicrosoftWebDriver.exe,但我无法弄清楚如何告诉Protractor在哪里找到那个司机。我已经尝试将它添加到我的用户路径,我的系统路径,量角器的节点模块文件夹中的selenium文件夹,并提供jvmArgs:seleniumArgs: ['-Dwebdriver.edge.driver="<path-to-driver"'],但我仍然可以SessionNotCreatedError。

我只编写纯JavaScript,没有Java或C#,我希望所有这些都在protractor.conf.js文件中设置为属性,在实际的测试文件中没有设置。我有最新版本的Node,我确保在运行ng e2e时关闭Edge。我需要更改或添加到配置文件才能运行它?

编辑:从this github issue,我将seleniumAddress: http://127.0.01:17556/添加到我的配置文件中,但现在我收到错误代码为135的ECONNREFUSED 127.0.0.1:17556错误。我从其中一个获取了该地址关于github问题的评论,但无论手动启动Edge驱动程序还是仅运行ng e2e --config <path-to-config>,我都会收到同样的错误。


seleniumAddress: 'http://localhost:4444/wd/hub'添加到配置文件中。使用webdriver-manager start --edge "<path-to-driver>\MicrosoftWebDriver.exe"手动运行边缘驱动程序,然后在另一个窗口中运行ng e2e。非常感谢HaC提供此解决方案!

1 个答案:

答案 0 :(得分:6)

参考:https://github.com/angular/protractor/issues/2377

  1. 下载并安装Edge驱动程序
  2. 运行webdriver-manager start --edge "C:\path_to_the_driver\MicrosoftWebDriver.exe"。默认情况下,这将在端口4444上启动您的selenium服务器,该服务器应该对您开放。
  3. 在量角器配置文件中:添加seleniumAddress: 'http://localhost:4444/wd/hub'