badoo / badoo/parallel_cucumber
Parallel Cucumber only outputs JUnit .xml for 1 of the scenarios in each feature file
- Dominant language
- Ruby
- Stars
- 23
- Forks
- 20
- PR merge metrics
- No merged PRs in 30d
Description
I am running parallel from a Rakefile using parallel_cucumber. What am I doing wrong if **I only get 1 JUnit file for 1 of the scenarios in my .feature file**?
I think both of my threads are getting the same file-name (named by feature file path: TEST-features-the_internet-basics.xml ) and one over-writes the other?
I get a process_0.log and a process_1.log file in my root folder but the JUnit .xml output files are NOT named this way, ending with the thread id.
Here is my project: https://github.com/djangofan/watir-cuke-starter
Here is my test output (with 2 .feature files containing 3 scenarios: resulting in only 2 junit .xml output files):
```
$ bundle exec rake test_parallel
0> Custom env: TEST=1 TEST_PROCESS_NUMBER=0; command: cucumber --format junit --out reports/win10_chrome/junit/ --format pretty features/the_internet/basics1.feature:6
1> Custom env: TEST=1 TEST_PROCESS_NUMBER=1; command: cucumber --format junit --out reports/win10_chrome/junit/ --format pretty features/the_internet/basics2.feature:6
2> Custom env: TEST=1 TEST_PROCESS_NUMBER=2; command: cucumber --format junit --out reports/win10_chrome/junit/ --format pretty features/the_internet/basics2.feature:13
0> Pid: 14744
1> Pid: 7308
2> Pid: 23348
1> # features/the_internet/the_internet.feature
1> Feature: Test The Internet
0> # features/the_internet/the_internet.feature
0> Feature: Test The Internet
2> # features/the_internet/the_internet.feature
2> Feature: Test The Internet
Given I am on the internet # features/step_definitions/the_internet_steps.rb:3
2> When I see a heading on the page # features/step_definitions/the_internet_steps.rb:7
2> Then I see the text 'Welcome' contained in the heading # features/step_definitions/the_internet_steps.rb:12
2> And show me the test setup # features/step_definitions/common_steps.rb:1
Given I am on the internet # features/step_definitions/the_internet_steps.rb:3
0> When I see a heading on the page # features/step_definitions/the_internet_steps.rb:7
0> Then I see the text 'Welcome' contained in the heading # features/step_definitions/the_internet_steps.rb:12
0> And show me the test setup # features/step_definitions/common_steps.rb:1
2> Test Setup: Selenium::WebDriver::Remote::Capabilities, WIN10, chrome, latest
2> 1 scenario (1 passed)
2> 4 steps (4 passed)
2> 0m9.216s
2> Report output at: reports/win10_chrome
2> Exited with status 0
Thread 2 has finished. Remaining(2): 0, 1
Given I am on the internet # features/step_definitions/the_internet_steps.rb:3
1> When I see a heading on the page # features/step_definitions/the_internet_steps.rb:7
1> Then I see the text 'Welcome' contained in the heading # features/step_definitions/the_internet_steps.rb:12
1> And show me the test setup # features/step_definitions/common_steps.rb:1
1 scenario (1 passed)Selenium::WebDriver::Remote::Capabilities, WIN10, chrome, latest
0> 4 steps (4 passed)
0> 0m9.464s
0> Report output at: reports/win10_chrome
0> Exited with status 0
Thread 0 has finished. Remaining(1): 1
1> Test Setup: Selenium::WebDriver::Remote::Capabilities, WIN10, chrome, latest
1> 1 scenario (1 passed)
1> 4 steps (4 passed)
1> 0m9.817s
1> Report output at: reports/win10_chrome
1> Exited with status 0
Thread 1 has finished. Remaining(0):
All threads are complete
************ FINAL SUMMARY ************
2 scenarios (2 passed)
12 steps (12 passed)
Took 0 Minutes, 16.74 Seconds
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the issue with the reported `bundle exec rake test_parallel` command from the Rakefile and inspect how parallel workers write JUnit output under `reports/win10_chrome/junit/`. Done means all three scenarios retain distinct JUnit XML results instead of one output file overwriting another.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ruby
- Domain
- testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100