Selenium 配置Capybara以使用Firefox的木偶WebDriver

Selenium 配置Capybara以使用Firefox的木偶WebDriver,selenium,capybara,selenium-firefoxdriver,firefox-marionette,Selenium,Capybara,Selenium Firefoxdriver,Firefox Marionette,随着木偶代替FirefoxDriver,我需要配置我的测试来运行它。 我已经下载了二进制文件,但我似乎无法将我的水豚驱动程序注册配置为实际使用木偶 Capybara.register_driver :selenium_firefox do |app| capabilities = Selenium::WebDriver::Remote::Capabilities.firefox capabilities["firefox_binary"] = 'path/to/marionette/re

随着木偶代替FirefoxDriver,我需要配置我的测试来运行它。 我已经下载了二进制文件,但我似乎无法将我的水豚驱动程序注册配置为实际使用木偶

Capybara.register_driver :selenium_firefox do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.firefox
  capabilities["firefox_binary"] = 'path/to/marionette/renamed/to/wires'
  Capybara::Selenium::Driver.new(app, browser: :firefox, desired_capabilities: capabilities)
end

但是,当我开始测试时,我只会得到FF的初始页面,就像我试图在没有木偶的情况下运行它一样。

木偶被传递给Driver.new的选项-不是期望的功能

Capybara.register_driver :selenium_firefox do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.firefox
  capabilities["firefox_binary"] = 'path/to/marionette/renamed/to/wires'
  Capybara::Selenium::Driver.new(app, browser: :firefox, desired_capabilities: capabilities)
end
Capybara.register_driver :selenium_firefox do |app|
  Capybara::Selenium::Driver.new(app, browser: :firefox, marionette: true)
end
它还要求您下载geckodriver,将其放在路径中,并将其重命名为wires

这些配置步骤的完整描述,包括木偶最新可执行文件下载链接

注意:Capybara还不支持木偶,有些东西在Capybara中正在修复,有些是selenium webdriver中的bug,还有一些只是它的一般缺陷-像它这样的东西只是停止从选择元素中选择选项-没有抛出错误,只是停止工作。我认为它还没有准备好用于现实世界