geckodriver

Proxy for using W3C WebDriver compatible clients to interact with Gecko-based browsers.

This program provides the HTTP API described by the WebDriver protocol to communicate with Gecko browsers, such as Firefox. It translates calls into the Marionette remote protocol by acting as a proxy between the local- and remote ends.

Installation

Geckodriver can be installed through various distribution channels:

  • You can download pre-built binaries for the most common platforms from our Releases page on GitHub.
  • Alternatively, you can compile it yourself by using:
    • cargo install geckodriver, or
    • Checking out the release branch or a specific tag.

For a detailed list of changes included in each release, please refer to the change log.

Documentation

Source code

geckodriver is made available under the Mozilla Public License.

Its source code can be found in mozilla-central under testing/geckodriver. This GitHub repository is only used for issue tracking and making releases.

Custom release builds

If a binary is not available for your platform, it's possibe to create a custom build using the Rust toolchain. To do this, checkout the release tag for the version of interest and run cargo build. Alternatively the latest version may be built and installed from crates.io using cargo install geckodriver.

Contact

The mailing list for geckodriver discussion is https://groups.google.com/a/mozilla.org/g/dev-webdriver.

There is also a Matrix channel on chat.mozilla.org to talk about using and developing geckodriver in #webdriver.