wd-sync v1.2.5
wd-sync
A synchronous version with a nice api of wd, the lightweight WebDriver / Selenium2 client for node.js, built using node-fibers.
Note: headless zombie was removed in 1.1.0
status
install
npm install wd-sync
code samples
CoffeeScript
# assumes that selenium server is running
wdSync = require 'wd-sync'
# 1/ simple Wd example
{browser, sync} = wdSync.remote()
sync ->
console.log "server status:", @status()
@init browserName:'firefox'
console.log "session id:", @getSessionId()
console.log "session capabilities:", @sessionCapabilities()
@get "http://google.com"
console.log @title()
queryField = @elementByName 'q'
@type queryField, "Hello World"
@type queryField, "\n"
@setWaitTimeout 3000
@elementByCss '#ires' # waiting for new page to load
console.log @title()
console.log @elementByNameIfExists 'not_exists' # undefined
@quit()
JavaScript
// assumes that selenium server is running
var wdSync = require('wd-sync');
// 1/ simple Wd example
var client = wdSync.remote()
, browser = client.browser
, sync = client.sync;
sync( function() {
console.log("server status:", browser.status());
browser.init( { browserName: 'firefox'} );
console.log("session id:", browser.getSessionId());
console.log("session capabilities:", browser.sessionCapabilities());
browser.get("http://google.com");
console.log(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());
console.log(browser.elementByNameIfExists('not_exists')); // undefined
browser.quit();
});
doc
Note: Doc and README modifications must be done in the doc/template directory.
examples
api
available environments
WebDriver
local WebDriver / Selenium2 server
Sauce Labs
Remote testing with Sauce Labs.
running tests
local / selenium server:
1/ Install and start Selenium server
./node_modules/.bin/install_selenium
./node_modules/.bin/install_chromedriver
./node_modules/.bin/start_selenium_with_chromedriver
2/ run tests
make test
remote / Sauce Labs
1/ configure sauce environment
export SAUCE_USERNAME=<SAUCE_USERNAME>
export SAUCE_ACCESS_KEY=<SAUCE_ACCESS_KEY>
# if using sauce connect
./node_modules/.bin/install_sauce_connect
./node_modules/.bin/start_sauce_connect
2/ run tests
make test_e2e_sauce
make test_midway_sauce_connect
building doc/mapping
README + doc
1/ Update the templates
2/ run make build_doc
mappings
1/ Upgrade wd
2/ run make build_mapping
publishing
npm version [patch|minor|major]
git push --tags origin master
npm publish
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago