Java SessionNotCreatedException:无法创建新服务:GeckoDriverService

Java SessionNotCreatedException:无法创建新服务:GeckoDriverService,java,linux,selenium,Java,Linux,Selenium,我正在使用: Java 1.8 硒3.5.0 Selenium独立服务器3.5.0 selenium hub的操作系统-RHEL 7 壁虎河18 火狐55 我有一个错误: org.openqa.selenium.SessionNotCreatedException: Unable to create new service: GeckoDriverService Build info: version: '3.5.0', revision: '8def36e068', tim

我正在使用:

  • Java 1.8
  • 硒3.5.0
  • Selenium独立服务器3.5.0
  • selenium hub的操作系统-RHEL 7
  • 壁虎河18
  • 火狐55
我有一个错误:

    org.openqa.selenium.SessionNotCreatedException: Unable to create new service: GeckoDriverService
    Build info: version: '3.5.0', revision: '8def36e068', time: '2017-08-10T23:00:22.093Z'
    System info: host: 'NC9128105064', ip: '9.128.105.64', os.name: 'Linux', os.arch: 'amd64', os.version: '3.10.0-327.el7.x86_64', java.version: '1.8.0_91'
    Driver info: driver.version: unknown
    Command duration or timeout: 16 milliseconds
        at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:215)
        at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:167)
        at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$new$0(JsonWireProtocolResponse.java:53)
        at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$getResponseFunction$2(JsonWireProtocolResponse.java:91)
        at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$24(ProtocolHandshake.java:360)
        at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
        at java.util.Spliterators$ArraySpliterator.tryAdvance(Unknown Source)
        at java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source)
        at java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)
        at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
        at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
        at java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)
        at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
        at java.util.stream.ReferencePipeline.findFirst(Unknown Source)
        at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:363)
        at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:137)
        at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142)
        at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:641)
        at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:254)
        at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:236)
        at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:137)
        at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:174)
        at Utils.BrowserDriver.ff(BrowserDriver.java:66)
        at TestCases.Category.LogInCreateCategory.logIn(LogInCreateCategory.java:29)
        at TestCases.TestRunner.main(TestRunner.java:82)
我认为Linux上通往geckodriver的路径有问题。我尝试了以下几种选择:

  • /drivers/geckodriver
  • drivers/geckodriver
  • root/drivers/geckodriver

    但没有成功
Linux上geckodriver目录中的
pwd
给了我:

/root/drivers

请将geckodriver更新至最新版本

File firefoxfile = new File(PropertyReader.getProperty("C://users//geckodriver.exe"));
 System.setProperty("webdriver.gecko.driver", firefoxfile.getPath());

请将geckodriver更新至最新版本

File firefoxfile = new File(PropertyReader.getProperty("C://users//geckodriver.exe"));
 System.setProperty("webdriver.gecko.driver", firefoxfile.getPath());

我遇到了同样的问题,并通过将系统属性设置为geckodriver.exe路径解决了它,如下所示:

System.setProperty("webdriver.gecko.driver","C:\\tech2\\selenium\\geckodriver.exe");
在实例化驱动程序之前设置属性


我找到了解决办法。这个问题似乎是selenium 3.x+特有的。

我遇到了同样的问题,并通过将系统属性设置为geckodriver.exe路径解决了它,如下所示:

System.setProperty("webdriver.gecko.driver","C:\\tech2\\selenium\\geckodriver.exe");
在实例化驱动程序之前设置属性


我找到了解决办法。这个问题似乎针对selenium 3.x+。

我在版本18中有geckodriver,所以它是最新的。此外,它还必须在Linux上运行,因此路径必须是Linux样式。在发生此错误之前,您至少能够运行一个场景吗?不,跳过所有测试。我在版本18中有geckodriver,因此它是最新的。此外,它必须在Linux上运行,因此路径必须为Linux样式。在发生此错误之前,您至少能够运行一个场景吗?否,将跳过所有测试。