-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow running individual test files in parallel via test workers #317
Allow running individual test files in parallel via test workers #317
Conversation
c10d823
to
8755e48
Compare
8755e48
to
4c526ef
Compare
4c526ef
to
f2caf43
Compare
👍 would love to see this merged. |
Fwiw also waiting on this - I've had more luck with process based parellization than selenium's own parallel support |
+1 This would be great. |
+1 |
Does this start multiple instances of selenium? How does that work? Does it use different ports? |
@richard-flosi A single running selenium server is all thats needed (nightwatch can even start/stop this for you) It should work with selenium grid. |
This sounds great and we plan on using it. When can we expect this feature to be added? |
The plan is to include it in v0.7. It needs a bit more work on polishing On Mon, May 18, 2015 at 6:53 PM, Richard Flosi [email protected]
|
@beatfactor any pointers you have for polishing, refactoring and making it more readable would be greatly appreciated |
Sure, I'll add some comments on the diff. |
@@ -1,6 +1,6 @@ | |||
var fs = require('fs'); | |||
var path = require('path'); | |||
|
|||
var async = require('async'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
would it be possible to avoid using async and making use promises instead?
Thanks for your contribution and sorry for not accepting this. However this feature is implemented in 0.7 based on your concept. |
Added a new top level config to nightwatch.json,
defaults to being disabled, i.e. behaves as nightwatch currently does:
"testWorkers": {}
If testWorkers are enabled, a second option can be specified, with a default value of "auto":
This
workers
option configures how many nightwatch workers can run concurrently.If workers are enabled, the nightwatch cli process that is invoked initially does not run any tests.
Instead, it runs nightwatch sub-processes, reporting back on results as tests finish.
Test concurrency is done at the file level. Each test file will fill a test worker slot. Individual tests/steps in a test file will not run concurrently.