Nightwatch
Automated 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.
Homepage | Getting Started | Developer Guide | API Reference | Blog
Nightwatch v1.0
We're delighted to announce the release of Nightwatch v1.0 in BETA. Documentation and other updates will follow soon on the homepage.
To install it run:
$ npm install nightwatch@1.0.11
Please try out the new version and let us know of any issues.
1. Install Nightwatch
Install Node.js (together with the NPM tool) by following instructions available on nodejs.org.
From NPM:
$ npm install nightwatch
From GitHub:
$ git clone https://github.com/nightwatchjs/nightwatch.git
$ 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:
ChromeDriver
- for running tests against the Chrome browser;
- download url: https://sites.google.com/a/chromium.org/chromedriver/downloads.
GeckoDriver
- for running tests against the Mozilla Firefox browser;
- download url: https://github.com/mozilla/geckodriver/releases.
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: https://selenium-release.storage.googleapis.com/index.html
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.
Setup Guides
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
Various example tests are included in the examples
folder which demonstrate the usage of several Nightwatch features.
Example configuration
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.
Changelog
The release history and changelog is available on the GitHub Releases page.
Updates
We use Twitter to communicate updates regarding development and to announce releases. Follow @nightwatchjs to get the latest or if you wish to get in touch.
Discuss / Support
The Mailing List/Google Group is the most appropriate tool for Nightwatch related discussions. In addition, there is a StackOverflow Nightwatch.js tag at your disposal.