data-driven tests should execute in parallel
See original GitHub issueright now, the unit of parallelization is a feature file. this has been working fine for most teams but yep we can do better
mainly 3 things:
- each
Scenario
in aFeature
should be a unit - each example row in a
Scenario Outline
should be a unit - each “loop” row in a data-driven
call
(where the argument is a JSON array) should be a unit
possible challenges: not sure of implications if there is a callonce
involved - worst case it may be executed multiple times. we may have to duplicate the Background
for each thread.
Issue Analytics
- State:
- Created 5 years ago
- Comments:23 (13 by maintainers)
Top Results From Across the Web
Parallel Testing Guide using TestProject
Parallel Testing is a test process that concurrently runs multiple tests. We can execute 1 or more tests on multiple browsers with multiple...
Read more >Data driven test generation - Parallelizing large data sets.
Using the script above, I execute the buildFile script to generate my test files and then execute Cypress-Parallel using 5 Node threads.
Read more >Run Data-Driven Tests in Parallel - O'Reilly
Run Data -Driven Tests in Parallel ... Get Data-Driven Testing in Selenium now with the O'Reilly learning platform. O'Reilly members experience live online ......
Read more >What is Parallel Testing and How Does it Work? - Semaphore CI
You can run both in parallel in the same block. Identify dependencies: block dependencies should mimic the internal dependencies of the project.
Read more >A complete guide to parallel testing - HeadSpin
The blog walks us through the basics of parallel testing, its benefits, implementation, challenges, and the best-in-class parallel testing ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
@ptrthomas I just wanted to chime in that I appreciate the solution you’ve gone with which gives users the flexibility to keep the current behaviour if desired.
While scenarios shouldn’t depend on one another (ideally, although I’m in the same boat as @SreecharanShroff in that some scenarios have been made dependent on one another to minimize setup code) - there are other cases where deterministic ordering can be valuable. For instance, one of the deliverables on my project is a “SQL diff” which shows all SQL calls that have been introduced in a new version. We use our Karate tests (run with a thread count of 1) to exercise our REST APIs which in turn results in the SQL queries being output (with a custom logback configuration). But this relies on some consistency from one run to the next. Even still, it’s not fool proof but it’s sufficient for our purposes.
0.9.0 released