wd-parallel-async

Run your WD.js driven tests in multiple browsers, at the same time

npm install wd-parallel-async
1 downloads in the last week
24 downloads in the last month

Run your WD.js driven tests in multiple browsers, at the same time !

Update node to latest

http://nodejs.org/#download

Install

npm install wd-parallel-async

Authors

License

Writing a test!

Start by importing the required libraries.

var webdriver = require('../lib/main')
  , assert = require('assert');

Then create the parallelizer.

var browsers = p_webdriver.remote();

Now add a test method to the multiple browser object. This method needs to arguments named browser and desired.

  • This method contains your test logic.
  • Test should be run as if to be run on an object named browser.
browsers.test = function(browser, desired) {

    console.log("server status:", browser.status());
    browser.init(desired);

    browser.get("http://google.com");
    console.log("title is "+browser.title());

    var queryField = browser.elementByName('q');
    browser.type(queryField, "Hello World");
    browser.type(queryField, "\n");

    browser.setWaitTimeout(3000);
    browser.elementByCss('#ires'); // waiting for new page to load
    console.log(browser.title());

    browser.quit();

};

Load the configuration for all your browsers from your configuration file.

//Load configuration file
browsers.loadConfigFile("examples/config.json");

Now you can go ahead and run the test !

//Run test on all browsers
browsers.run();

Supported Methods

This uses node-wd-sync written by sebv so you can check this page on supported methods.

Full JsonWireProtocol mapping:

full mapping

More docs!

WD is simply implementing the Selenium JsonWireProtocol, for more details see the official docs:
 - http://code.google.com/p/selenium/wiki/JsonWireProtocol

Run the tests!

...

npm loves you