Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including nightwatch with all npm packages installed. Try it out:

var nightwatch = require("nightwatch")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

nightwatch v1.2.4

Easy to use Node.js based End-to-End testing solution for browser based apps and websites, using the W3C WebDriver API.


Homepage | Getting Started | Developer Guide | API Reference | About

Automated end-to-end testing framework powered by Node.js and using W3C Webdriver (formerly Selenium).

Nightwatch is a complete and integrated solution for end-to-end testing of web applications and websites, and also for Node.js unit and integration testing.

npm Build Status Coverage Status npm package Twitter Follow

Changelog | Mailing List | nightwatch.js tag on StackOverflow

Nightwatch v1.2

We're delighted to announce the release of Nightwatch v1.2. Please see the upgrade guide if you are upgrading from a pre v1.0 version.

1. Install Nightwatch

From NPM:

$ npm install nightwatch
  • add -g if you wish to install Nightwatch globally on your system.

From GitHub:

$ git clone
$ cd nightwatch
$ npm install

2. Download WebDriver

Nightwatch uses a WebDriver compatible server to control the browser. WebDriver is a W3C specification and industry standard which provides a platform and HTTP protocol to interact with a browser.

Nightwatch includes support for automatically managing the following services:


Starting with version 75, Chromedriver has W3C Webdriver protocol enabled by default. If you'd like to stick to the JSONWire for now adjust the chromeOptions:

desiredCapabilities : {
  browserName : 'chrome',
  chromeOptions: {
    w3c: false


Selenium Standalone Server

  • allows managing multiple browser configurations in one place and also to make use of the Selenium Grid service;
  • the selenium server jar file selenium-server-standalone-3.x.x.jar can be downloaded from the Selenium releases page:

It's important to note that, while the Selenium Server was required with older Nightwatch versions (v0.9 and prior), starting with version 1.0 Selenium is no longer necessary.

Specific WebDriver setup guides can be found on the Docs website. Legacy Selenium drivers setup guides along with debugging instructions can be found on the Wiki.


Example tests are included in the examples folder which demonstrate the usage of several Nightwatch features.

You can also check out the nightwatch-website-tests repo for example tests against the website.

A sample nightwatch.json config file can be found in bin folder.

Nightwatch unit tests

The tests for Nightwatch are written using Mocha.

To run the complete test suite:

$ npm test

To check test coverage, run the command:

$ npm run mocha-coverage

and then open the generated coverage/index.html file in your browser.

Support Nightwatch

Nightwatch is built by @pineviewlabs - an independent software consultancy based in Oslo, Norway, with help from our contributors.

Please consider supporting Nightwatch by becoming a backer or sponsor on the OpenCollective platform.

Open Collective


RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free