如何在使用c9时在Rails中设置Firefox二进制文件的路径?

问题描述:

对于那些不知道的人来说,c9是一个使用云的在线IDE。所以,我试图使用Firefox的Watir,我得到的错误是如何在使用c9时在Rails中设置Firefox二进制文件的路径?

“找不到Firefox的二进制(OS = Linux系统)确保已安装的Firefox 或 硒手动设置路径:: ::的webdriver火狐:: Binary.path =”

当我检查我的电脑对Firefox的文件路径正是这种电脑/ Windows(C:)/ Program Files文件/ Mozilla Firefox浏览器

这是我的代码,我正在使用

def save 
    require 'watir' 
    require 'firefox' 

    @browser = Watir::Browser.new :firefox 
    @browser.goto "https://kroger.softcoin.com/programs/kroger/digital_coupons/?origin=DigitalCoupons&banner=Smiths#contentBox" 

    @browser.div(id: "contentBox").wait_until(&:present?).text 

    # Could not find Firefox binary (os=linux). 
    # Make sure Firefox is installed or set the path manually with 
    # Selenium::WebDriver::Firefox::Binary.path= 
    # ThisPC:WindowsC:ProgramFiles:MozillaFireFox 

    @products = @browser.divs 

end 
+0

你有没有使用geckodriver –

尝试添加下面的代码:

require 'selenium-webdriver' 
Selenium::WebDriver::Firefox::Binary.path='C:/Program Files/Mozilla FireFox/firefox.exe' 

另外,你需要geckodriver添加为更高版本firfox没有geckodriver从下面的网址不支持

下载geckodriver: -

https://github.com/mozilla/geckodriver/releases

您还需要添加geckodrover的路径如下:

export PATH=$PATH:/path/to/geckodriver 

参考:

https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver

另请参考: -

https://github.com/SeleniumHQ/selenium/wiki/Ruby-Bindings

这是为我工作的Java代码如下:

System.setProperty("webdriver.gecko.driver", "C:\\abc\\geckodriver.exe"); 
WebDriver driver = new FirefoxDriver(); 
driver.manage().window().maximize(); 
driver.get("http://gmail.com"); 

希望它会帮你

+0

得到错误“不是文件:”C:/ Program Files/Mozilla FireFox/firefox.exe“。尽管谢谢你的回复。 – ChrisWilson

+0

你的firefox安装在同一个位置。你有没有检查? ..你正在使用geckodriver,正如我在回答中提到的那样? –

+0

https://github.com/SeleniumHQ/selenium/wiki/Ruby-Bindings –