web-dev-qa-db-fra.com

Selenium :: WebDriver :: Error :: UnknownError: newSession

Je suis en train de faire mon test rspec avec le webdriver Selenium. La configuration ressemble à la manière suivante:

require 'capybara/dsl'

Capybara.app = Rack::File.new File.expand_path('../fixtures', __FILE__)

require 'Selenium-webdriver'

Capybara.register_driver :firefox do |app|
  options = ::Selenium::WebDriver::Firefox::Options.new
  options.args << '--headless' if travis?

  Capybara::Selenium::Driver.new(app, browser: :firefox, options: options)
end
Capybara.default_driver = :firefox

Quand je lance rspec, les tests échouent 

 Failure/Error: visit '/select2-v3/index.html'

 Selenium::WebDriver::Error::UnknownError:
   newSession
 # WebDriverError@chrome://marionette/content/error.js:178:5
 # UnknownCommandError@chrome://marionette/content/error.js:472:5
 # despatch@chrome://marionette/content/server.js:290:13
 # execute@chrome://marionette/content/server.js:271:11
 # onPacket/<@chrome://marionette/content/server.js:246:15
 # onPacket@chrome://marionette/content/server.js:245:8
 # _onJSONObjectReady/<@chrome://marionette/content/transport.js:490:9
 # ./spec/select2_spec.rb:6:in `block (2 levels) in <top (required)>'

Googling autour ne m'a donné aucun résultat.

Avez-vous des idées pour y remédier?

Mise à jour: J'utilise firefox v63.0

6
Hirurg103

Vous devez mettre à niveau vers la dernière version de geckodriver (v0.23.0) pour utiliser Firefox 63.

10
Thomas Walpole

J'ai fait brew install geckodriver puis essayé brew link geckodriver puis un message d'erreur indique que le répertoire du fichier cible existe déjà. J'ai donc supprimé le répertoire du fichier cible en utilisant rm '/usr/local/bin/geckodriver' avant de créer un nouveau lien en utilisant brew link geckodriver

0
chickensmitten