Code Quality Rank: L4
Monthly Downloads: 0
Programming language: JavaScript
License: MIT License
Tags: Testing    
Latest version: v1.5.1

Nightwatch alternatives and similar modules

Based on the "Testing" category.
Alternatively, view nightwatch alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Nightwatch or a related project?

Add another 'Testing' Module



npm Node.js CI codecov npm package Join the chat at https://gitter.im/nightwatchjs/nightwatch Node Support

HomepageDeveloper GuideAPI ReferenceAboutBlog

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. It can also be used for Node.js unit and integration testing.

Nightwatch v2.0-beta

What's New | Release Notes | Discussions

We're delighted to announce that Nightwatch v2.0 is now in beta and available in NPM. Read the what's new docs page for an overview of the new featues, improvements, and important changes.

Install with:

npm i [email protected]

Up & Running in 2 Minutes:

1. Install Nightwatch from NPM

$ npm install nightwatch --save-dev

2. Install Browser Drivers:

Geckodriver (Firefox):

Geckodriver is the WebDriver service used to drive the Mozilla Firefox Browser.

$ npm install geckodriver --save-dev

Chromedriver is the WebDriver service used to drive the Google Chrome Browser.

$ npm install chromedriver --save-dev

or install everything with one line:

$ npm install nightwatch geckodriver chromedriver --save-dev

3. Run a Demo Test:

Nightwatch comes with an examples folder containing several sample tests.

Below will run a basic test which opens the search engine Ecosia.org, searches for the term "nightwatch", and verifies if the term first result is the Nightwatch.js website.

$ npx nightwatch examples/tests/ecosia.js

Manually Download Browser Drivers

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:



Selenium Standalone Server

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 the Selenium Server 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.


Examples below are written using Nightwatch 2.0.

Search for the term "Nightwatch.js" using:

Google search using page objects

ToDo App on AngularJs homepage

You can run any of the examples by simply referring to the examples folder like below:

npx nightwatch examples/tests/angularTest.js

CucumberJS examples

The bundled config file which is auto-generated by Nightwatch on the first run (only if one is not already present in the project), contains configuration and examples for running the CucumberJS examples immediately, using the following:

npx nightwatch --env cucumber-js

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

Nightwatch unit tests

The tests for Nightwatch are written using Mocha.

1. Clone the project

$ git clone https://github.com/nightwatchjs/nightwatch.git
$ cd nightwatch
$ npm install

2. Run tests

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.

About Nightwatch

Nightwatch was initially built by @pineviewlabs - an independent software consultancy based in Oslo, Norway, with help from contributors. In mid 2021, Nightwatch has become a part of the @BrowserStack family and it is being developed further at the BrowserStack Open-source Program Office. Read more on our blog.

We are thankful for everyone who supported Nightwatch on the OpenCollective platform.



*Note that all licence references and agreements mentioned in the Nightwatch README section above are relevant to that project's source code only.