-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Improve execution time by executing on multiple machines #2303
Comments
@MiladSadinam thanks for raising, you'r right that it's currently not supported. From what you've written, I think the kind of thing you're looking for is more like Playwright's sharding feature, where an independent run would execute a subset of test cases based on an index and count, e.g.: # machine 1
npx cucumber-js --shard 1/3
# machine 2
npx cucumber-js --shard 2/3
# machine 3
npx cucumber-js --shard 3/3 I'd definitely be supportive of doing this as a relatively low-effort way to give people another lever for performance. Some thoughts about how this should work (more for internal audience):
|
Thank you for your feedback. Yes, the sharding feature would exactly be what I would like. As feedback from our side, we would not care about merging of the reports. I was wondering how I could achieve a similar result until you guys hopefully implement this. My idea would be something like:
I would need to tweak the limit between the two machines, to get similar execution times, but otherwise it should work. |
Yep, that might be worth a try. |
Just noting we could also explore doing this as a plugin, with the new plugins concept. |
🤔 What's the problem you're trying to solve?
We love cucumber and use it for end-to-end testing our UI. As the tests include the UI, backend and database, they are quite "heavy" and are taking more and more time. We would like to decrease the execution time, especially as they are used in our pull-request CI/CD.
✨ What's your proposed solution?
Another quick way to speed up tests is to split them across multiple machines. I believe Cucumber-Js currently does not support this, correct? Or is there any third-party package I did not find?
We would love that feature. Nowadays, hardware is getting more cheap, and you can so easily speed up the workflow by paying little more money.
⛏ Have you considered any alternatives or workarounds?
Cucumber-js supports the
parallel
parameter, but our pull-request provider (Atlassian Bitbucket) only supports a limited number of (not very strong) machines, so we currently cannot go beyond2
for theparallel
parameter.The text was updated successfully, but these errors were encountered: