Selenium WebDriver 3.4.0+geckodriver 0.18.0+Firefox ??-¿Qué combinación funciona?
selenium-webdriver (4)
Estoy ejecutando Selenium 2.x con Firefox 47.0.2 en Windows Server 2008R2 usando .Net. Estoy ejecutando el código x64.
Estoy tratando de actualizar a Selenium 3.40 + geckdriver 0.18.0 pero no puedo encontrar una versión de Firefox que funcione al 100%. Estoy usando versiones x64 en-US de Firefox a menos que se indique lo contrario. Fueron descargados desde here .
Esto es lo que he encontrado:
- Firefox 51.0.1 - demasiado viejo - Geckodriver se queja "No se puede encontrar un conjunto de capacidades que coincidan"
- Firefox 52.0.2: obtengo una IndexOutOfBoundException cuando llamo a setPageLoadTimeout
- Firefox 52.2.1esr: obtengo una IndexOutOfBoundException cuando llamo a setPageLoadTimeout
- Firefox 53.0.3: al salir, la ventana de Firefox permanece activa, debe cerrarse manualmente
- Firefox 54.0.1 (probó tanto x64 como X86): se bloquea al salir
- Firefox 55b9 - se bloquea al salir
¿Existe una combinación de selenium 3.4.0 + geckodriver + Firefox que funcione en .Net para usted?
Descubrí que usar Selenium 3.40.0 + geckodriver 0.16.1 con Firefox 53.0.3 o 54.0.1 funcionó para mí. No probé ninguna versión anterior de Firefox o geckodriver. Además, geckodriver 0.17.0 exhibió el mismo comportamiento que 0.18.0, bloqueando Firefox en RemoteWebDriver.Close ().
Encontró una solución para el problema de bloqueo de WebDriver + Firefox. Hacer esto:
firefoxOptions.addPreference ("browser.tabs.remote.autostart", falso); firefoxOptions.addPreference ("browser.tabs.remote.autostart.1", falso); firefoxOptions.addPreference ("browser.tabs.remote.autostart.2", falso);
Utilizando
- GeckoDriver 0.18.0
- Selenium-Java 3.5.1
- Firefox 55.0.3
Fuentes:
y Github
Esta pregunta ha estado surgiendo con bastante frecuencia desde que migramos de las versiones heredadas de
Firefox
versiones de
Mozilla Firefox
basadas en
Marionette
(comenzando con
Firefox 48
).
En general, cada versión de
GeckoDriver
admite cada versión de las versiones de
Mozilla Firefox
(comenzando con Firefox 48) donde la propiedad
"marionette"
debe establecerse en
true
(ya sea de
forma predeterminada
o mediante la
configuring
través de la clase
DesiredCapabilities
y pasarla como argumento mientras se inicializa el
Web Browser
)
Si está trabajando con las versiones heredadas de
Firefox
(hasta
Firefox 47.x
)
GeckoDriver
todavía funciona, pero debe establecer explícitamente la propiedad
"marionette"
en
false
Recientemente, se anunciaron algunas dependencias entre las
GeckoDriver
,
Selenium
y
Mozilla Releases
.
Las
Release Notes
GeckoDriver
establecen claramente todas las
New Feature Addition
principales / menores,
Enhancements
,
Bug Fixes
y
Download Location
separado en este
link
.
Dependencias de selenio :
Selenium 3.4.0
ahora recomiendaGeckodriver v0.16.0
fuertemente.
Selenium 3.3.1
mejor compatible conGeckodriver v0.15.0
.
Dependencias GeckoDriver :
geckodriver v0.18.0
ahora recomiendaFirefox 53 and greater
geckodriver v0.16.0
solo es compatible conSelenium 3.4 and greater
.
Responder:
Selenium 3.5.0 + GeckoDriver 0.18.0 + Firefox 55.0.2 combo funciona mejor a mi final.
Last update was on : 22Aug2017
Tabla de compatibilidad del navegador GeckoDriver , Selenium y Firefox
Versión FireFox: 60.0.2 funciona bien con la combinación de la versión del controlador Gecko: 0.18.0 Versión Selenium: 3.4.0