The following table shows a mapping between geckodriver releases, and required versions of Selenium and Firefox:
|0.30.0||≥ 3.11 (3.14 Python)||78 ESR||n/a|
|0.29.1||≥ 3.11 (3.14 Python)||60||n/a|
|0.29.0||≥ 3.11 (3.14 Python)||60||n/a|
|0.28.0||≥ 3.11 (3.14 Python)||60||n/a|
|0.27.0||≥ 3.11 (3.14 Python)||60||n/a|
|0.26.0||≥ 3.11 (3.14 Python)||60||n/a|
|0.25.0||≥ 3.11 (3.14 Python)||57||n/a|
|0.24.0||≥ 3.11 (3.14 Python)||57||79|
|0.23.0||≥ 3.11 (3.14 Python)||57||79|
|0.22.0||≥ 3.11 (3.14 Python)||57||79|
|0.21.0||≥ 3.11 (3.14 Python)||57||79|
geckodriver is not yet feature complete. This means that it does not yet offer full conformance with the WebDriver standard or complete compatibility with Selenium. You can track the implementation status of the latest Firefox Nightly on MDN. We also keep track of known Selenium, remote protocol, and specification problems in our issue tracker.
Support is best in Firefox 57 and greater, although generally the more recent the Firefox version, the better the experience as they have more bug fixes and features. Some features will only be available in the most recent Firefox versions, and we strongly advise using the latest Firefox Nightly with geckodriver. Since Windows XP support in Firefox was dropped with Firefox 53, we do not support this platform.
Starting with the 0.26.0 release geckodriver is able to connect to Android devices, and to control packages which are based on GeckoView (eg. Firefox Preview aka Fenix, or Firefox Reality). But it also still supports versions of Fennec up to 68 ESR, which is the last officially supported release from Mozilla.
To run tests on Android specific capabilities under
have to be set when requesting a new session. See the Android section under
Firefox Capabilities for more details.