Selenium / Watir无法检测到Chromedriver,即使它在我的路径中(Windows 7)

时间:2014-11-14 01:11:32

标签: selenium watir selenium-chromedriver

我知道还有另一个与此类似的问题,但是回答者提供的链接已经过时了(当我深入了解当前的Watir文档时,我只能在Windows 8.1上找到信息;我在Windows 7上,以及步骤该文件建议解决这个问题并不能帮我解决这个问题。

我正在尝试使用Watir / minitest执行测试(沿着rake ci:setup:minitest test TEST = test / full_path / happypath_test.rb),并且它会对以下内容产生阻碍:

Selenium::WebDriver::Error::WebDriverError: Unable to find the chromedriver exec
utable. Please download the server from http://chromedriver.storage.googleapis.c
om/index.html and place it somewhere on your PATH. More info at http://code.goog
le.com/p/selenium/wiki/ChromeDriver.

Watir文档和错误消息都指向PATH。但是,我刚刚下载了最新版本的Chromedriver(2.12,它出现了),并将exe文件放入我已经确认的文件夹中,在我的PATH中(特别是c:/ Ruby193 / bin - 是的我知道我已经老了Ruby版本;不是我可以为这个项目更新的东西)

我知道Chromedriver在场,因为我可以从irb运行它:

require 'watir-webdriver

接着是

b = Watir::Browser.new :chrome

这样可以很好地启动镀铬窗口。但是,当我实际尝试执行测试时,它会给出“无法找到chromedriver”错误。

我已经运行了bundle install来尝试并确保我使用正确版本的东西并且不知道还能做什么。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

直接将driver_path指定为硒。

在启动新的浏览器窗口之前,只需调用此方法:

Selenium::WebDriver::Chrome::Service.driver_path = "/absolute/path/to/chromedriver"

这还有一个好处,它不需要您对PATH进行模拟,您可以将其检入到存储库中(当然,使路径成为项目根目录的动态目录,等等)。

答案 1 :(得分:-1)

我找到了真正好的帖子herehere。您可以通过超级简单的步骤进行配置。

我已经尝试并测试过极好的工作。

从第1篇开始: 从firefox更改为chrome(无论您在何处实例化浏览器),以便它将变为: @browser = Watir::Browser.new :chrome

现在,如果您使用的是Windows,请将下载的二进制文件复制粘贴到C:/Windows目录`

第二篇文章讲述了如何将默认路径c:\windows更改为项目的自定义路径。它有趣,乐于助人。看看肯定。<​​/ p>