Run your WD.js driven tests in multiple browsers, at the same time !
Latest commit ee893e0 Jan 24, 2014 @OniOni Merge pull request #2 from chartbeat/master
Increase configurability of wd object

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

Update node to latest


npm install wd-parallel-async



Writing a test!

Start by importing the required libraries.

var webdriver = require('wd-parallel-async')
  , assert = require('assert');

Then create the parallelizer.

var parallelizer = webdriver.parallelizer();

You can go ahead and call, test). Here is an example with chrome and firefox. In your test function write your test as if you were writting it with WD.js.[{ 
    tags: ["examples"],
    name: "This is an example test",
    tags: ["examples"],
    name: "This is an example test",
}], function(browser, desired) {

    browser.on('status', function(info){
        console.log('\x1b[36m%s\x1b[0m', info);

    browser.on('command', function(meth, path){
        console.log(' > \x1b[33m%s\x1b[0m: %s', meth, path);

    browser.init(desired, function() {
        browser.get("", function() {
            browser.title(function(err, title) {
            assert.ok(~title.indexOf('I am a page title - Sauce Labs'), 'Wrong title!');
                browser.elementById('submit', function(err, el) {
                    browser.clickElement(el, function() {
                        browser.eval("window.location.href", function(err, title) {
                            assert.ok(~title.indexOf('#'), 'Wrong title!');

Supported Methods

All tests are run with WD.js check the docs for information about available methods.

Full JsonWireProtocol mapping:

full mapping

More docs!

WD is simply implementing the Selenium JsonWireProtocol, for more details see the official docs: