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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何配置Protractor(JS)以在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问题的一个评论得到了该地址,但我得到相同的错误,无论启动边缘驱动程序手动或只运行ng e2e --config <path-to-config>


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

答案

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

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

以上是关于如何配置Protractor(JS)以在Microsoft Edge中运行测试?的主要内容,如果未能解决你的问题,请参考以下文章

如何做基于OS Profile的Protractor配置

当 Angular 不可用时,如何等到 Protractor 可见元素?

Protractor-nodejs:如何从 url 中捕获动态文本

未为自定义protractor.conf文件创建Webdriver实例

如何在 Angularjs Protractor 中使用系统环境变量?

angular 调试 js (分 karms protractor / test e2e unit )