1

我们使用 selenium 3.0.1 和 gecko 驱动程序 (v0.11.1) 和 firefox 版本 49 。当我们尝试使用此代码触发 Firefox 浏览器时

     System.setProperty("webdriver.gecko.driver",gecko_driver_path );
     WebDriver driver = new FirefoxDriver();        
     driver.manage().window().maximize();
     return driver;

我们收到此错误

     java.lang.NoClassDefFoundError: org/openqa/selenium/remote/SessionNotFoundException
     at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:216)
     at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:211)
     at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:207)
     at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:120)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     at java.lang.reflect.Method.invoke(Method.java:497)
     at cucumber.runtime.Utils$1.call(Utils.java:37)

请帮我 。

4

1 回答 1

1

您必须添加 selenium-standalone 服务器 jar 依赖项,如下所示:

如果您使用 DefaultSelenium(或 RemoteWebDriver 实现),您仍然需要启动 Selenium 服务器。最好的方法是从 Selenium 下载页面下载 selenium-server-standalone.jar 并使用它。此外,如果将以下依赖项添加到 pom.xml,您还可以将 Selenium 服务器嵌入到您自己的项目中:

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-server</artifactId>
    <version>3.0.1</version>
</dependency> 

参考:

  1. http://www.seleniumhq.org/download/maven.jsp
于 2016-11-17T08:17:45.770 回答