Selenium rails 测试中的 Chromedriver 错误

Asi*_*sif 2 selenium rspec ruby-on-rails selenium-chromedriver

尝试运行其他一些开发人员编写的 rspec 测试。但是测试失败并出现以下错误

Selenium::WebDriver::Error::WebDriverError: unable to connect to chromedriver 127.0.0.1:9515

  0) /media/uploader product video wistia uploads adds video when links is valid
     Failure/Error: visit login_path

     Selenium::WebDriver::Error::WebDriverError:
       unable to connect to chromedriver 127.0.0.1:9515
Run Code Online (Sandbox Code Playgroud)

gemfile 不包含chromedriver-helpergem,但这应该不是问题,因为其他开发人员已经能够在 gemfile 中没有 gem 的情况下成功运行测试。我试过 brew 安装 chromedriver 但这没有帮助。我怀疑这个问题与 repo 使用 ruby​​ 2.2.8 的事实有关,但由于某种原因,chromedriver 仅适用于 2.4.2。

asahmed:~/Documents/workspace/vendor-portal-next (master) $ chromedriver -v
rbenv: chromedriver: command not found

The `chromedriver' command exists in these Ruby versions:
  2.4.2
Run Code Online (Sandbox Code Playgroud)

谁能帮我这个?

Str*_*ave 5

我遇到了类似的问题,这是由于无法摆脱 rbenv chromedriver shim 造成的。按照此评论中的步骤为我修复了它。

就我而言,gemfile 确实包含 chromedriver-helper,但如果是同一问题,我想我会发表评论。

https://github.com/flavorjones/chromedriver-helper/issues/44#issuecomment-358743719

步骤是:

首先检查是否

? which chromedriver
Run Code Online (Sandbox Code Playgroud)

返回

/Users/xxx/.rbenv/shims/chromedriver
Run Code Online (Sandbox Code Playgroud)

如果是这样试试

? ls ~/.rbenv/versions/*/bin/* | grep chromedriver
Run Code Online (Sandbox Code Playgroud)

获取光盘上的 chromedriver 可执行文件列表。

然后删除那些可执行文件

? rm [path to chromedriver and chromedriver-update executables]
Run Code Online (Sandbox Code Playgroud)

最后运行

? rbenv rehash
Run Code Online (Sandbox Code Playgroud)