Quick Start of running Selenium WebDriver against PhantomJS in Java on Windows (with Maven)

2

23. November 2013 by Michael Wowro

This is the quickstart with Maven. For a quickstart without Maven, look here

The browser with the probably highest speed and lowest memory consumption in Selenium world: the headless PhantomJS

[Update 26.11.2013]: Ghostdriver is not ripe yet due to lack of enough stable maintainers: https://github.com/detro/ghostdriver/issues/140

[Note]: The development of Selenium and GhostDriver (which is the bridge between PhantomJS and Selenium) isn’t synchronized yet. So maybe the most actual versions of Selenium Server and GhostDriver may not work together. A combination that fits:

* PhantomJS 1.9.2
* GhostDriver 1.0.4
* Selenium 2.34

Setup is really quick

1.) Download phantomjs-1.9.2-windows.zip here and extract it to C:\Program Files (x86)
2.) Add C:\Program Files (x86)\phantomjs-1.9.2-windows to the PATH-variable
3.) Add in pom.xml

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

4.) Maybe change the version of selenium in pom.xml

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

Sample Code

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.phantomjs.PhantomJSDriver;

public class Example {

    public static void main(String[] args) {
        WebDriver driver = new PhantomJSDriver();
        driver.get("http://www.google.com");

        WebElement element = driver.findElement(By.name("q"));
        element.sendKeys("Cheese!");
        element.submit();

        System.out.println("Page title is: " + driver.getTitle());
        
        driver.quit();
    }
}

Looks so good

… if you’ve done right – your result should look like that:
GhostDriver_Selenium_PhantomJS

Speedy Testing!

About these ads

2 thoughts on “Quick Start of running Selenium WebDriver against PhantomJS in Java on Windows (with Maven)

  1. shaibal says:

    well pom.xml will only work if i have maven in the project as without maven it will not get the dependencies during runtime.please suggest if i donot have maven in my project then how to introduce ghostdriver in it ?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: