The version 1.0.1 is not covered by your current version range.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
It might be worth looking into these changes and trying to get this project onto the latest version of nightwatch.
If you have a solid test suite and good coverage, a passing build is a strong indicator that you can take advantage of these changes directly by merging the proposed change into your project. If the build fails or you don’t have such unconditional trust in your tests, this branch is a great starting point for you to work on the update.
Release Notesv1.0.1
A significant update from previous 0.x versions featuring a complete rewrite of the entire codebase and also including some new features. The main focus has been on improving the underlying architecture, therefore this release includes mostly fixes and improvements, but also a few brand new features. Please see the upgrade guide for details on breaking changes and how to migrate from v0.9.
WebDriver Integration
ChromeDriver and GeckoDriver Integration - Nightwatch now manages ChromeDriver and GeckoDriver processes directly, similarly to the Selenium Server is managed. The webdriver configuration settings may be used to control this behaviour, e.g.:
For a complete list of available config settings (until the docs get updated on the website), refer to the default settings.
It's important to note that, while the Selenium Server was required with older Nightwatch versions (v0.9 and prior) and continues to work with v1.0, starting with version 1.0 Selenium is completely optional and only required in a Selenium Grid environment.
Page Objects Improvements
object-based element selectors optional, object-based selector values in commands - see #1156
index property to element objects - allows the option of specifying an index property in element objects for pages or element commands - see #1115
New Mocha Implementation
For cases when Mocha is used as a test runner, a new adapter has been introduced in place of the mocha-nightwatch package. This is however in experimental stages.
New programatic API
There has been some demand for a proper programatic API, through which Nightwatch may be used without a configuration file. Nightwatch exports now a new runTests() public method which may be used for such purposes.
The settings object inherits from the default settings mentioned above.
constNightwatch=require('nightwatch');
Nightwatch.runTests('/path/to/tests_folder', {
// various settings
}).then(function() {
// Tests finished
}).catch(function(err) {
// An error occurred
});
concurrency - improved support for running tests in parallel using test workers and test environements;
test hooks - fixed a number of bugs related to test and global hooks;
retries - better support for test case and test suite retries;
error handling - improved error handling support which should help with identifying problems inside tests.
filters - improved support for using filter and exclude properties.
This release also paves the way for our own upcoming, Nightwatch dedicated, cloud testing service - NightCloud.io.
Known Issues and Limitations
running in parallel (e.g. with test workers) is not yet available when using GeckoDriver directly, however it is OK for when using Selenium and GeckoDriver combined;
socket hang up error while running ChromeDriver, managed by Nightwatch - occasionally ChromeDriver will abort the connection with this error and the process might be left hanging. A possible workaround might be specifying the --no-sandbox cli argument to ChromeDriver, like so:
GeckoDriver is not yet feature complete regarding WebDriver API support and thus may not be on par with ChromeDriver regarding commands support;
Other driver implementations, such as Safari or Edge, have not yet been properly tested, nor integration with cloud testing providers, like BrowserStack or SauceLabs.
FAQ and help
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
Version 1.0.1 of nightwatch was just published.
The version 1.0.1 is not covered by your current version range.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
It might be worth looking into these changes and trying to get this project onto the latest version of nightwatch.
If you have a solid test suite and good coverage, a passing build is a strong indicator that you can take advantage of these changes directly by merging the proposed change into your project. If the build fails or you don’t have such unconditional trust in your tests, this branch is a great starting point for you to work on the update.
Release Notes
v1.0.1A significant update from previous 0.x versions featuring a complete rewrite of the entire codebase and also including some new features. The main focus has been on improving the underlying architecture, therefore this release includes mostly fixes and improvements, but also a few brand new features. Please see the upgrade guide for details on breaking changes and how to migrate from v0.9.
WebDriver Integration
webdriver
configuration settings may be used to control this behaviour, e.g.:For a complete list of available config settings (until the docs get updated on the website), refer to the default settings.
It's important to note that, while the Selenium Server was required with older Nightwatch versions (v0.9 and prior) and continues to work with v1.0, starting with version 1.0 Selenium is completely optional and only required in a Selenium Grid environment.
Page Objects Improvements
New Mocha Implementation
For cases when Mocha is used as a test runner, a new adapter has been introduced in place of the
mocha-nightwatch
package. This is however in experimental stages.New programatic API
There has been some demand for a proper programatic API, through which Nightwatch may be used without a configuration file. Nightwatch exports now a new
runTests()
public method which may be used for such purposes.The settings object inherits from the default settings mentioned above.
The programatic API is being used extensively in the unit/integration tests, e.g. in test/src/runner/testRunTestsuite.js
Other Fixes and Improvements:
filter
andexclude
properties.This release also paves the way for our own upcoming, Nightwatch dedicated, cloud testing service - NightCloud.io.
Known Issues and Limitations
--no-sandbox
cli argument to ChromeDriver, like so:Commits
The new version differs by 83 commits.
1aed088
1.0.1
e655f3f
fixed a linting issue
ce060c8
1.0.0
7f56772
updated readme
e8b1784
updated travis build file to use eslint
3b31c6c
Updated readme and sample config file
49e5bf3
Merge branch 'features/release-1.0'
27eb4c0
added new programatic api runTests and updated some of the integration tests
20a413e
partial refactoring of several unit tests
c0cf06c
updated more test runner tests
9984440
partial refactoring of several unit tests
2dfb492
updated protocol actions and fixed several other issues
97ffcff
partial refactoring of unit tests
bdd93fd
partial refactoring of several unit tests
7c15dd7
partial refactoring of unit tests
There are 83 commits in total.
See the full diff
FAQ and help
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).Your Greenkeeper bot :palm_tree: