0

It's official, the site I am testing is only supported in firefox. I need a stable version of geckodriver, and as of this writing...

  geckodriver-v0.11.1-win64.zip

Is not it. Is there extra configuration that is needed with gecko that is native in chrome? Is my system too old for the latest greatest?

The latest FF is around v46, the latest gecko is running v30

my Gemfile.lock

  GEM
remote: https://rubygems.org/
specs:
actionmailer (4.2.0)
  actionpack (= 4.2.0)
  actionview (= 4.2.0)
  activejob (= 4.2.0)
  mail (~> 2.5, >= 2.5.4)
  rails-dom-testing (~> 1.0, >= 1.0.5)
actionpack (4.2.0)
  actionview (= 4.2.0)
  activesupport (= 4.2.0)
  rack (~> 1.6.0)
  rack-test (~> 0.6.2)
  rails-dom-testing (~> 1.0, >= 1.0.5)
  rails-html-sanitizer (~> 1.0, >= 1.0.1)
actionview (4.2.0)
  activesupport (= 4.2.0)
  builder (~> 3.1)
  erubis (~> 2.7.0)
  rails-dom-testing (~> 1.0, >= 1.0.5)
  rails-html-sanitizer (~> 1.0, >= 1.0.1)
activejob (4.2.0)
  activesupport (= 4.2.0)
  globalid (>= 0.3.0)
activemodel (4.2.0)
  activesupport (= 4.2.0)
  builder (~> 3.1)
activerecord (4.2.0)
  activemodel (= 4.2.0)
  activesupport (= 4.2.0)
  arel (~> 6.0)
activesupport (4.2.0)
  i18n (~> 0.7)
  json (~> 1.7, >= 1.7.7)
  minitest (~> 5.1)
  thread_safe (~> 0.3, >= 0.3.4)
  tzinfo (~> 1.1)
arel (6.0.0)
builder (3.2.2)
capybara (2.4.4)
  mime-types (>= 1.16)
  nokogiri (>= 1.3.3)
  rack (>= 1.0.0)
  rack-test (>= 0.5.4)
  xpath (~> 2.0)
childprocess (0.5.5)
  ffi (~> 1.0, >= 1.0.11)
cucumber (1.3.19)
  builder (>= 2.1.2)
  diff-lcs (>= 1.1.3)
  gherkin (~> 2.12)
  multi_json (>= 1.7.5, < 2.0)
  multi_test (>= 0.1.2)
cucumber-rails (1.4.2)
  capybara (>= 1.1.2, < 3)
  cucumber (>= 1.3.8, < 2)
  mime-types (>= 1.16, < 3)
  nokogiri (~> 1.5)
  rails (>= 3, < 5)
diff-lcs (1.2.5)
docile (1.1.5)
erubis (2.7.0)
ffi (1.9.6-x86-mingw32)
gherkin (2.12.2-x86-mingw32)
  multi_json (~> 1.3)
globalid (0.3.3)
  activesupport (>= 4.1.0)
hike (1.2.3)
i18n (0.7.0)
json (1.8.2)
loofah (2.0.1)
  nokogiri (>= 1.5.9)
mail (2.6.3)
  mime-types (>= 1.16, < 3)
mime-types (2.4.3)
mini_portile (0.6.2)
minitest (5.5.1)
multi_json (1.10.1)
multi_test (0.1.2)
nokogiri (1.6.6.2-x86-mingw32)
  mini_portile (~> 0.6.0)
rack (1.6.0)
rack-test (0.6.3)
  rack (>= 1.0)
rails (4.2.0)
  actionmailer (= 4.2.0)
  actionpack (= 4.2.0)
  actionview (= 4.2.0)
  activejob (= 4.2.0)
  activemodel (= 4.2.0)
  activerecord (= 4.2.0)
  activesupport (= 4.2.0)
  bundler (>= 1.3.0, < 2.0)
  railties (= 4.2.0)
  sprockets-rails
rails-deprecated_sanitizer (1.0.3)
  activesupport (>= 4.2.0.alpha)
rails-dom-testing (1.0.5)
  activesupport (>= 4.2.0.beta, < 5.0)
  nokogiri (~> 1.6.0)
  rails-deprecated_sanitizer (>= 1.0.1)
rails-html-sanitizer (1.0.1)
  loofah (~> 2.0)
railties (4.2.0)
  actionpack (= 4.2.0)
  activesupport (= 4.2.0)
  rake (>= 0.8.7)
  thor (>= 0.18.1, < 2.0)
rake (10.4.2)
rspec (3.2.0)
  rspec-core (~> 3.2.0)
  rspec-expectations (~> 3.2.0)
  rspec-mocks (~> 3.2.0)
rspec-core (3.2.1)
  rspec-support (~> 3.2.0)
rspec-expectations (3.2.0)
  diff-lcs (>= 1.2.0, < 2.0)
  rspec-support (~> 3.2.0)
rspec-mocks (3.2.1)
  diff-lcs (>= 1.2.0, < 2.0)
  rspec-support (~> 3.2.0)
rspec-rails (3.2.1)
  actionpack (>= 3.0, < 4.3)
  activesupport (>= 3.0, < 4.3)
  railties (>= 3.0, < 4.3)
  rspec-core (~> 3.2.0)
  rspec-expectations (~> 3.2.0)
  rspec-mocks (~> 3.2.0)
  rspec-support (~> 3.2.0)
rspec-support (3.2.2)
rubyzip (1.1.7)
selenium-webdriver (2.44.0)
  childprocess (~> 0.5)
  multi_json (~> 1.0)
  rubyzip (~> 1.0)
  websocket (~> 1.0)
simplecov (0.9.2)
  docile (~> 1.1.0)
  multi_json (~> 1.0)
  simplecov-html (~> 0.9.0)
simplecov-html (0.9.0)
sprockets (2.12.3)
  hike (~> 1.2)
  multi_json (~> 1.0)
  rack (~> 1.0)
  tilt (~> 1.1, != 1.3.0)
sprockets-rails (2.2.4)
  actionpack (>= 3.0)
  activesupport (>= 3.0)
  sprockets (>= 2.8, < 4.0)
syntax (1.2.0)
thor (0.19.1)
thread_safe (0.3.4)
tilt (1.4.1)
tzinfo (1.2.2)
  thread_safe (~> 0.1)
websocket (1.2.1)
xpath (2.0.0)
  nokogiri (~> 1.3)

PLATFORMS
 x86-mingw32

DEPENDENCIES
 capybara
 cucumber
 cucumber-rails
 rails
 rspec
 rspec-rails
 selenium-webdriver
 simplecov
 syntax
4

1 回答 1

1

The latest version of FF is 50.0.1 and is only usable with selenium via geckodriver and selenium v3+. For that you'll need to download and place geckodriver in your PATH somewhere. If instead you want to test with FF <= 47.0.1 then you can either stay on selenium v2.53.4 or move to v3 and configure the selenium driver to not use marionette (the new protocol used to control FF 48+) like below.

Capybara.register_driver :selenium do |app|
  Capybara::Selenium::Driver.new(
    app,
    browser: :firefox,
    desired_capabilities: Selenium::WebDriver::Remote::Capabilities.firefox(marionette: false)
  )
end

You also probably want to update your selenium, there have been a lot of fixes/features added since 2.4.4 and should be backwards compatible

于 2016-12-01T17:32:03.947 回答