Please first read through the FAQ.
Please ask questions on StackOverflow or Google Group discussion list.
Any questions posted to Protractor's Github Issues will be closed with this note:
Please read the [contributing guidelines](https://github.com/angular/protractor/blob/master/CONTRIBUTING.md#questions); these types of questions are ill-suited for GitHub. Thanks!
If you have a bug or feature request, please file an issue. Before submitting an issue, please search the issue archive to help reduce duplicates, and read the FAQ.
When submitting an issue, please include context from your test and
your application. If there's an error, please include the error text. Try running with troubleshooting messages (protractor --troubleshoot
) against your configuration to make sure that there is not an error with your setup.
Please format code and markup in your issue using github markdown.
Loosely, follow the Angular contribution rules.
- If your PR changes any behavior or fixes an issue, it should have an associated test.
- New features should be general and as simple as possible.
- Breaking changes should be avoided if possible.
- All pull requests require review. No PR will be submitted without a comment from a team member stating LGTM (Looks good to me).
- JavaScript style should generally follow the Google JS style guide.
- Wrap code at 80 chars.
- Document public methods with jsdoc.
- Be consistent with the code around you!
Please write meaningful commit messages - they are used to generate the changelog, so the commit message should tell a user everything they need to know about a commit. Protractor follows AngularJS's commit message format.
In summary, this style is
<type>(<scope>): <subject>
<BLANK LINE>
<body>
Where <type>
is one of [feat, fix, docs, style, refactor, test, chore] and
<scope>
is a quick descriptor of the location of the change, such as cli, clientSideScripts, element.
Test your changes on your machine by running npm start
to start up the test application,
then npm test
to run the test suite. This assumes you have a Selenium Server running
at localhost:4444.
When you submit a PR, tests will also be run on the Continuous Integration environment through Travis. If your tests fail on Travis, take a look at the logs - if the failures are known flakes in Internet Explorer or Safari you can ignore them, but otherwise Travis should pass.