java - Selenium+Firefox 到 Selenium+PhantomJS

标签 java selenium junit phantomjs

我在 Mozilla 上使用 Selenium IDE 来测试网站。之后,我在 Eclipse 中创建了一个 java 项目,并导入了使用 Selenium IDE 完成的测试。然后我直接在Eclipse中运行它。

如何使用 PhantomJS 而不是 Mozilla Firefox 运行测试?

最佳答案

你有两种方法在 phantomjs 中运行测试,但首先你必须在某个地方安装/解压 phantomjs 并将你的 PATH 变量扩展到它。

首先:您可以通过 Maven pom.xml 使用 Ghostdriver java 绑定(bind)(您需要在 Eclipse 项目中包含该库),如 here 中所示。

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

然后以这种方式实例化您的 WebDriver:

WebDriver driver = new PhantomJSDriver();

第二:通过以下方式在 WebDriver 模式下运行 phantomjs(在单独的控制台窗口中或作为快捷方式)

phantomjs --webdriver=4444

here然后通过java实例化WebDriver:

WebDriver driver = new RemoteWebDriver(
    new Uri("http://127.0.0.1:4444/wd/hub"),
    DesiredCapabilities.phantomjs()
);

另请参阅用作 hub 的另一个问题.

关于java - Selenium+Firefox 到 Selenium+PhantomJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23521785/

相关文章:

java - ActiveMQ 的 @SendTo 注释无提示地失败

java.lang.illegalargumentException 没有为该名称定义查询[...]

javascript - 使用 Selenium 时如何禁用 Javascript?

html - 具有特定值的任何属性的所有元素的 XPath?

java - Mockito NotaMockException

java - 将 Mockito VerificationModes 与 JUnit 参数化测试相结合?

Java方法撤销算法

java - dropwizard 中的身份验证流程

java - Selenium Java-需要从第三个 html 子元素中获取 innertext 值

java - 使用 JUnit 测试返回多个值的 API