Selenium Webdriver 3.3.1 gecko 驱动程序 0.18 Firefox 55.0.03 URL 无法打开

Selenium Webdriver 3.3.1 gecko driver 0.18 Firefox 55.0.03 URL not opening

尝试使用 Selenium Webdriver 3.3.1 gecko 驱动程序 0.18 Firefox 55.0.03 启动 firefox 浏览器 URL 不是 opening.I 我遇到以下错误:

 1504590431182  geckodriver INFO    Listening on 127.0.0.1:17925 Sep 05,
 2017 11:17:11 AM org.openqa.selenium.remote.ProtocolHandshake
 createSession INFO: Attempting bi-dialect session, assuming Postel's
 Law holds true on the remote end 1504590431839 geckodriver::marionette INFO    Starting browser  \?\C:\Program Files (x86)\Mozilla Firefox\firefox.exe with args["-marionette"] 1504590433890 addons.manager  ERROR   startup failed:
 [Exception... "Component returned failure code: 0x80070057
 (NS_ERROR_ILLEGAL_VALUE) [nsIFile.create]"  nsresult: "0x80070057
 (NS_ERROR_ILLEGAL_VALUE)"  location: "JS frame ::
 resource://gre/modules/FilJavaScerUitpitl se.rjrsomr :: :r
 eFsioluerUctei:l/s/_ggreet/Dmiord u:l:e sl/iAnded o7n0M"a n
 adgaetra.:j snmo,]  lSitnaec k1 5t9r6a:ce: 
 NFSi_lEeRURtOiRl_sN_OgTe_tIDNiIrT(I)A@LrIeZsEoDu:r
 cAed:d/o/ngMraen/amgoedru liess /nFoitl eiUntiitlisa.ljiszme:d7 0  <
 FileUtils_getFile()@resource://gre/modules/FileUtils.jsm:42 <
 validateBlocklist()@resource://gre/modules/AddonManager.jsm:656 <
 startup()@resource://gre/modules/AddonManager.jsm:816 <
 startup()@resource://gre/modules/AddonManager.jsm:3122 <
 observe()@jar:file://///%3F/C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/addonManager.js:65
 1504590434086  Marionette  INFO    Enabled via --marionette JavaScript
 error: resource://gre/modules/AddonManager.jsm, line 2465:
 NS_ERROR_NOT_INITIALIZED: AddonManager is not initialized JavaScript
 error: resource://gre/modules/AddonManager.jsm, line 3137: TypeError:
 AddonManagerInternal._getProviderByName(...) is undefined
 1504590435547  Marionette  INFO    Listening on port 54969
 1504590435588  Marionette  INFO    Listening on port 54969 Sep 05, 2017
 11:17:16 AM org.openqa.selenium.remote.ProtocolHandshake createSession
 INFO: Falling back to original OSS JSON Wire Protocol. Sep 05, 2017
 11:17:16 AM org.openqa.selenium.remote.ProtocolHandshake createSession
 INFO: Falling back to straight W3C remote end connection Exception in
 thread "main" org.openqa.selenium.SessionNotCreatedException: Unable
 to create new remote session. desired capabilities = Capabilities
 [{marionette=true,
 firefoxOptions=org.openqa.selenium.firefox.FirefoxOptions@71e53b,
 browserName=firefox,
 moz:firefoxOptions=org.openqa.selenium.firefox.FirefoxOptions@71e53b,
 version=, platform=ANY}], required capabilities = Capabilities [{}]
 Build info: version: Driver info: driver.version:
 FirefoxDrive

请为此提供解决方案。

下载最新版本的 selenium jar 文件,即 3.5 并尝试。正如我所见,您使用的是 geckodriver v0.18,因此请为此使用最新的 jar。

下载 selenium 最新稳定版即 selenium 3.5.3 并创建如下驱动程序。

System.setProperty("webdriver.gecko.driver",geckoDriverPath);
FirefoxProfile ffProfile = new FirefoxProfile();
ffProfile.setPreference("browser.tabs.remote.autostart.2", false);
FirefoxOptions options=new FirefoxOptions();
options.setProfile(ffProfile);
driver = new FirefoxDriver(options);

从下方下载最新的 geckoDriver link。

Link to download geckodriver

下面的代码是为了解决退出驱动程序时浏览器崩溃的问题。

ffProfile.setPreference("browser.tabs.remote.autostart.2", false);

您看到的错误说明了一切 Build info: version: Driver info: driver.version:。 gecko 驱动程序未捕获和打印您的构建信息和版本。主要原因是 Selenium, GeckoDriver & Mozilla Firefox Browser 版本在您的 Test Environment.

中不兼容

您提到了Selenium Webdriver 3.3.1 gecko driver 0.18 Firefox 55.0.03

geckodriver v0.18.0 的发行说明明确提到了以下依赖项:

Note that geckodriver v0.16.0 is only compatible with Selenium 3.4 and greater.

当您尝试使用 Selenium v3.3.1geckodriver v0.18.0 时,您会看到 SessionNotCreatedException.