selenium-node-webdriver
Drive PhantomJS 1.8+ from Node.js using Selenium's WebDriver
This module provides a simple wrapper around the Node.js WebDriver implementation that ships with Selenium.
Prerequisites
Installation
npm install selenium-node-webdriver
Usage
phantomjs --webdriver=4444 &node node_modules/selenium-node-webdriver/examples/hello.js
This example (examples/hello.js
) queries Google for 'webdriver' and returns
the titles of the results.
var WebDriver = ; ;
API
require('selenium-node-webdriver')(config <object>)
-> Promise
The module exports a factory function which accepts a config object and returns a promise. The config object has two properties, both of which are optional:
server
: describes the WebDriver server to connect to; it has the following
properties:
host
: the server's hostname (localhost)port
: the port to connect to (4444)retries
: the number of times to try to connect to the server (5)delay
: the delay in ms between connection attempts (500)
capabilities
: describes the
capabilities
of the WebDriver client you are creating. It has the following properties by
default:
browserName
:'chrome'
version
:''
platform
:'ANY'
javascriptEnabled
:true
The returned promise is resolved with a RemoteWebDriver instance if the connection succeeds or rejected with the error from the final retry if connection fails.
Useful documentation
Selenium
WebDriverJS: an introduction to using JavaScript as a WebDriver client