Sync implementation of the WebDriver protocol in Node.js.
On Ubuntu, you need to make sure you have libcurl installed.
sudo apt-get install libcurl4-openssl-dev
npm install webdriver-http-syncdriver = new WebDriver(serverUrl, desiredCapabilities, httpOptions)
| Method | Description |
|---|---|
driver.navigateTo(url) |
Navigates the browser to the specificed relative or absolute url. If relative, the root is assumed to be http://127.0.0.1:#{applicationPort}, where applicationPort is passed in to the options for testium.runTests. |
driver.refresh() |
Refreshes the browser. |
driver.getElement(cssSelector) |
Finds an element on the page using the cssSelector and returns an Element. |
driver.getElements(cssSelector) |
Finds all elements on the page using the cssSelector and returns an array of Elements. |
driver.setElementTimeout(milliseconds) |
Sets a timeout for WebDriver to find elements with getElement and getElements. |
driver.getUrl() |
Returns the current url of the page. |
driver.getPageTitle() |
Returns the current page title. |
driver.getPageSource() |
Returns the current page's html source. |
driver.getScreenshot() |
Returns screenshot as a base64 encoded PNG. |
driver.evaluate(javascriptString) |
Executes the given javascript. It must contain a return statement in order to get a value back. |
driver.setCookie(Cookie) |
Sets a cookie on the current page's domain. Cookie = { name, value, path='/' } |
driver.getCookies() |
Returns all cookies visible to the current page. |
driver.clearCookies() |
Deletes all cookies visible to the current page. |
driver.acceptAlert() |
Accepts the visable alert. |
driver.dismissAlert() |
Dismisses the visable alert. |
driver.getAlertText() |
Gets the visable alert's text. |
driver.typeAlert(text) |
Send text to the visable alert's input box. |
driver.close() |
Closes the WebDriver session. |
element = driver.getElement(selector)
| Method | Description |
|---|---|
element.get(attribute) |
Returns the element's specified attribute, which can be text, which returns the visisble text of that element. |
element.isVisible() |
Returns true if the element is visiable. |
element.type(strings...) |
Sends strings... to the input element. |
element.clear() |
Clears the input element. |
element.click() |
Calls click on the element. |
There are 97 WebDriver methods! The progress of implementing all of them is visualized below.
The most important and often used methods are already implemented. You can help out by implementing more methods.


