nightwatch

Automated testing and continous integration framework based on node.js and selenium webdriver

Github星跟踪图

Nightwatch.js

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.3

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

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:

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

$ npm install chromedriver --save-dev

or install everything with one line:

$ npm i nightwatch geckodriver chromedriver --save-dev

3. Run a Demo Test:

Nightwatch comes with an examples folder containing a few 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.

$ ./node_modules/.bin/nightwatch node_modules/nightwatch/examples/tests/ecosia.js

Windows users might need to run node node_modules/.bin/nightwatch.


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:

ChromeDriver

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
  }
}

GeckoDriver

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 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.

Examples

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 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.

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.

主要指标

概览
名称与所有者nightwatchjs/nightwatch
主编程语言JavaScript
编程语言JavaScript (语言数: 6)
平台
许可证MIT License
所有者活动
创建于2012-03-17 21:28:18
推送于2025-03-18 20:51:05
最后一次提交
发布数368
最新版本名称v3.12.1 (发布于 )
第一版名称v0.2.8 (发布于 2014-02-07 14:20:00)
用户参与
星数11.9k
关注者数250
派生数1.4k
提交数2.9k
已启用问题?
问题数2859
打开的问题数266
拉请求数694
打开的拉请求数63
关闭的拉请求数478
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?