Source code
Revision control
Copy as Markdown
Other Tools
# 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
* [WebDriver] (work in progress)
* [Cross browser testing](https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing)
* [Firefox capabilities](https://firefox-source-docs.mozilla.org/testing/geckodriver/Capabilities.html)
* [Capabilities example](https://firefox-source-docs.mozilla.org/testing/geckodriver/Capabilities.html#capabilities-example)
* [Analyzing crash data from Firefox](https://firefox-source-docs.mozilla.org/testing/geckodriver/CrashReports.html)
## 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
chat.mozilla.org to talk about using and developing geckodriver in