/nightwatch

End-to-end testing framework written in Node.js and using the W3C Webdriver API

Primary LanguageJavaScriptMIT LicenseMIT

Nightwatch.js

npm Node.js CI codecov npm package Discord Node Support

Nightwatch.js Schematic Logo

Nightwatch is an integrated testing framework powered by Node.js and using the W3C Webdriver API. It is a complete testing solution developed at BrowserStack and which can be used for:

☑️ end-to-end testing of web applications and websites
☑️ component testing in isolation (React / Vue)
☑️ Node.js unit and API testing

🚀 Nightwatch v2

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

Install with:

npm i nightwatch

⚙️ Get started in 60 seconds

nightwatch-cli-gif

1. Install Nightwatch from NPM

# from your existing project's root dir
$ npm init nightwatch

# if you want to initialize a new project
$ npm init nightwatch path/to/new/project

2. Answer a few questions about your preferred setup:

  • What is your Language - Test Runner setup?
  • Where do you want to run your e2e tests?
  • Where you'll be testing on?
  • Where do you plan to keep your end-to-end tests?
  • What is the base_url of your project?

Nightwatch will do the entire setup for you based on your answers.

3. Run a Demo Test:

Nightwatch comes with a few examples, which are automatically copied to your Nightwatch project during the setup and can also be used as boilerplate to write your own tests on top of them.

You can follow the instructions given at the end of the setup to run your first test with Nightwatch.

image


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.

Licence

MIT