
Product
Introducing Socket Firewall Enterprise: Flexible, Configurable Protection for Modern Package Ecosystems
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.
@nightwatch/schematics
Advanced tools
Fast and easy installation of Nightwatch into your projects
Framework & Language Supported: Angular
This project is a Schematics implementation that allows you to easily integrate Nightwatch into your Angular projects.
This Schematic will:
🏗️ Install Nightwatch, and it's dependencies
⚙️ Add NPM scripts for running Nightwatch tests
📦 Scaffold base Nightwatch config and test files
❓ Prompt for removal of Protractor files and configuration

Run as one command in an Angular CLI app directory. Note this will add the schematic as a dependency to your project.
ng add @nightwatch/schematics
One can provide following options:
| Option | Description |
|---|---|
| noBuilder | This will skip the builder addition, leaving the angular.json file unmodified and requiring you to run Nightwatch from the command line or through your IDE. Include --noBuilder in your ng add command. |
With the custom builder installed, you can run Nightwatch with the following commands:
ng e2e
ng run {your-project-name}:nightwatch-run
These two commands do the same thing. They will run nightwatch e2e tests.
Once Nightwatch is added to your project, all Nightwatch CLI options will be available when triggering e2e tests. E.g.: --verbose, --retries etc.

Install Schematics CLI globally
npm install -g @angular-devkit/schematics-cli
Install Nightwatch-schematics in your project
npm install @nightwatch/schematics
Run following command to install Nightwatch in your project:
schematics @nightwatch/schematics:ng-add
Once Nightwatch is added to your project, all Nightwatch CLI options will be available when triggering e2e tests. E.g.: --verbose, --retries etc. One can update e2e:test to include cli options.
Issues with this schematic can filed here
If you want to contribute (or have contributed in the past), feel free to add yourself to the list of contributors in the package.json before you open a PR!
This command will update nightwatch schematic package
npm update @nightwatch/schematics
The best way to ask for help and to report bugs is to open an issue.
Gitter is another option.
It's very simple, you just have to run ng add @nightwatch/schematics command, and it will prompt you to remove Protractor from angular project.
All you have to do is install the relevant drivers, and replace env value (Check the column names in the table below) env-name in angular.json. The config in angular.json will look like this.
"nightwatch-run": {
"builder": "@nightwatch/schematics:nightwatch",
"options": {
"devServerTarget": "angularapp:serve",
"tsConfig": "../nightwatch/tsconfig.e2e.json",
"config": "./nightwatch.conf.js",
"env": "<env-name>"
},
"configurations": {
"production": {
"devServerTarget": "angularapp:serve:production"
}
}
},
"e2e": {
"builder": "@nightwatch/schematics:nightwatch",
"options": {
"devServerTarget": "angularapp:serve",
"tsConfig": "../nightwatch/tsconfig.e2e.json",
"config": "./nightwatch.conf.js",
"env": "<env-name>"
},
"configurations": {
"production": {
"devServerTarget": "angularapp:serve:production"
}
}
}
| Projects | command |
|---|---|
| Angular App | npm run e2e |
| Typescript Project | npm run e2e:test |
| Name | driver | command |
|---|---|---|
| chrome | chromedriver | npm install chromedriver --save-dev |
| firefox | geckodriver | npm install geckodriver --save-dev |
| selenium-server | selenium-server | npm install selenium-server --save-dev |
🛠️ Node.js and npm are required for the scripts. Make sure it's installed on your machine.
⬇️ Install the dependencies for the schematic and the sandbox application
npm i && cd sandbox && npm i && cd ..
🖇 Link the schematic in the sandbox to run locally
npm run link:sandbox
🏃 Run the schematic
npm run build:clean:launch
Execute the schematic against the sandbox. It will add Nightwatch config, tests, and custom builder, then run e2e tests in the sandbox.
npm run test
Run the unit tests using Jasmine as a runner and test framework
npm run build:test
npm run test:unit
Running the schematic locally performs file system changes. The sandbox is version-controlled so that viewing a diff of the changes is trivial. After the schematic has run locally, reset the sandbox with the following.
npm run clean
These projects: @briebug/cypress-schematic, schuchard/prettier-schematic helped us in development of this project. Thank you!
FAQs
Adds Nightwatch to an existing Angular CLI project
The npm package @nightwatch/schematics receives a total of 223 weekly downloads. As such, @nightwatch/schematics popularity was classified as not popular.
We found that @nightwatch/schematics demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.

Security News
Open source dashboard CNAPulse tracks CVE Numbering Authorities’ publishing activity, highlighting trends and transparency across the CVE ecosystem.

Product
Detect malware, unsafe data flows, and license issues in GitHub Actions with Socket’s new workflow scanning support.