最新版本的Selenium Webdriver和PhantomJs的兼容性问题

时间:2014-09-23 06:10:09

标签: java maven selenium selenium-webdriver phantomjs

我正在尝试使用ghostdriver(Phantomjs)运行我的webdriver测试用例。我有一个maven项目,OS - WIN8, 编码 - JAVA 1.7, 框架:testng6.8.7 + maven3,目前使用最新版本的Selenium Webdriver,即pom.xml文件中的依赖项。

 <!-- Selenium Web Driver -->
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.43.1</version>
    </dependency>

我在pom.xml文件中尝试了很少的PhantomJs依赖但它与最新版本的Wendriver不兼容。

    <dependency>
        <groupId>com.github.klieber</groupId>
        <artifactId>phantomjs</artifactId>
        <version>1.9.2</version>
    </dependency>

我无法导入

  **import org.openqa.selenium.phantomjs.PhantomJSDriver;
  import org.openqa.selenium.phantomjs.PhantomJSDriverService;**

但是使用phantomJs版本1.0.4,我能够导入但是给出错误java.lang.NoClassDefFoundError:org / openqa / selenium / HasInputDevices

那么我可以使用哪种phantomjs版本与最新版本的Selenium WebDriver兼容。

1 个答案:

答案 0 :(得分:2)

com.github.klieber:phantomjs:1.x.x似乎无法再访问了。您应该使用com.github.detro:phantomjsdriver:1.2.0

<dependency>
    <groupId>com.github.detro</groupId>
    <artifactId>phantomjsdriver</artifactId>
    <version>1.2.0</version>
</dependency>

您也可以使用较旧的1.1.0版本

<dependency>
    <groupId>com.github.detro.ghostdriver</groupId>
    <artifactId>phantomjsdriver</artifactId>
    <version>1.1.0</version>
</dependency>

版本1.2.0取决于2.41.0 selenium库,版本1.1.0具有2.39.0依赖性。

其他方式com.github.klieber:phantomjs-maven-plugin:0.4无法提供课程PhantomJSDriverPhantomJSDriverService

Override dependencies of third party jar in maven显示了一种覆盖selenium库版本以使用最新版本的方法。