我在mean.js版本4.2上运行了npm测试,它给了我一个"连接被拒绝"量角器e2e测试错误。我尝试更新像this says to.这样的硒现在它的版本2.27和另一个Stack Overflow帖子说2.24。 Chrome驱动程序是否再次破坏?
Running "protractor:e2e" (protractor) task
webdriver-manager path: /Users/tdiddy/meaning42/node_modules/grunt-protractor-runner/node_modules/protractor/bin/webdriver-manager
selenium standalone is up to date.
chromedriver is up to date.
Starting selenium standalone server...
[launcher] Running 1 instances of WebDriver
Selenium standalone server started at http://192.168.0.30:53658/wd/hub
/Users/tdiddy/meaning42/node_modules/grunt-protractor-runner/node_modules/selenium-webdriver/lib/atoms/error.js:108
var template = new Error(this.message);
^
UnknownError: Connection refused (Connection refused)
at new bot.Error (/Users/tdiddy/meaning42/node_modules/grunt-protractor-runner/node_modules/selenium-webdriver/lib/atoms/error.js:108:18)
答案 0 :(得分:2)
在这种情况下,为了回答你的问题,我相信chromedriver 2.27没有被使用......这就是为什么:
“在http:”处启动“Selenium独立服务器”意味着您已使用本地驱动程序提供程序启动了selenium独立服务器。当您使用本地驱动程序提供程序启动Protractor版本4(grunt-protractor-runner使用Protractor版本^ 4.0.0)时,使用的chromedriver是webdriver-manager配置中声明的版本。仅仅因为你下载2.27并不意味着Protractor在本地启动时会使用Protractor 2.27。
使用chromedriver 2.27有两种方法:
webdriver-manager update --versions.chrome 2.27
下载chromedriver 2.27,然后启动Protractor测试。webdriver-manager update --versions.chrome 2.27
下载您的二进制文件,然后使用webdriver-manager start --versions.chrome 2.27
启动您的selenium独立服务器。启动后,在配置中使用seleniumAddress: "http://localhost:4444/wd/hub"
启动它。您获得Connection refused
的原因可能是因为您使用的chromedriver版本的Chrome版本不兼容。我建议尝试两种建议的组合:在配置中使用Protractor 5.0.0 seleniumAddress
。如果此组合失败,请随时打开issue。
答案 1 :(得分:0)
我收到此错误并通过brew(brew update chromedriver
)将chromedriver更新为v2.32为我修复了