Contributing to Nightwatch
Contributions to Nightwatch are always welcome but please try to follow these guidelines when sending in something as it will help addressing the issue quicker and more smoothly.
Assistance requests posted in the Issues list are usually closed right away.
Submit an issue
Before submitting a new issues, try searching for a similar one here: https://github.com/nightwatchjs/nightwatch/search?type=Issues and add your scenario there and anything else which you think will help with fixing it;
If you are filing a bug report, regression issue or what it appears to be strange behaviour, please follow the steps below:
- Please write an elaborate title which explains the problem as accurate as possible For instance:
- not helpful: "Issue with tags"
- much better: "Tags don't work when combined with --skiptags option"
- Include a sample test which reproduces the problem you're experiencing. The test should be against a public url. The test and other info should be posted inline, attachments will be ignored;
- Include the verbose output, if possible (run nightwatch with
- Include your configuration (try to leave out the irrelevant bits);
- Also include: Nightwatch version, Node.js version, OS version and Webdriver/Selenium Server version;
- Please try not to report issues you have with individual browser drivers which cannot or should not be solved in Nightwatch.
Requesting a feature
Feature requests are welcome.
- Indicate in the issue title that it is a feature/enhancement request
- Explain the use case and include a sample test case and/or usage, if possible
- Try to submit enhancements that you cannot build with custom commands/assertions and something that will benefit the community
- Same as for issues, add your comments/vote to an existing feature request if you'd like to see it implemented
Submitting a pull request
Thanks in advance for your contribution.
- Follow the usual git workflow for submitting a pull request
- fork the project
- create a new branch from master (e.g.
- If you're fixing a bug also create an issue if one doesn't exist yet
- If it's a new feature/enhancemnt explain why do you think it's necessary
- If your change include drastic or low level changes please discuss them to make sure they will be accepted and what the impact will be
- If your change is based on exisiting functionality please consider refactoring first. Pull requests that duplicate code will not make it in very quick, if at all
- Do not include changes that are not related to the issue at hand
- Follow the same coding style with regards to spaces, semicolons, variable naming etc.
- Always add tests - after all this is a testing framework