Marionette, the next generation of FirefoxDriver, is nearing completion. You can track the implementation status on our status page.
To help make sure that we are not breaking anything we are not supposed to. Below are steps required to get you going.
Note that you should be using Selenium 3.0 or later, which enables support for Marionette by default.
Before installing Selenium you may want to consider creating a virtual environment:
virtualenv env_name source env_name/bin/activate
Then you will need to install Selenium. To do that, do the following.
pip install selenium
To install Selenium, you will need to get the Ruby Gem.
gem install selenium-webdriver
npm install selenium-webdriver
Setting up the Marionette executable
Just like the other drivers available to Selenium from other browser vendors, Mozilla has released an executable that will run alongside the browser.
You can find the latest executable on the GitHub release page.
Add executable to system path
The Selenium client bindings will try to locate the geckodriver executable from the system path. You will need to add the directory containing the executable to the system path.
On Unix systems you can do the following to append it to your system’s search path, if you’re using a bash-compatible shell:
On Windows you need to update the Path system variable to add the full directory path to the executable. The principle is the same as on Unix.
Most of the configuration of geckodriver is handled by 'capabilities' passed from the client bindings, and so you should initially look at the documentation for these first. For anything else, or to understand more, please refer to the documentation.
Updating your tests to use Marionette
With Selenium 3.0 and later, you shouldn't need to do anything to use Marionette, as it's enabled by default.