WIP -- feat: parallel scheme examples#176
Conversation
43f4de2 to
894d670
Compare
| feature_json_skeleton=feature_json_skeleton, | ||
| scenarios_to_run_in_feature=scenarios_to_run_in_feature, | ||
| scenario_outline_line=scenario_outline_line, | ||
| scenario_lines=[line], |
There was a problem hiding this comment.
@hrcorval , i ended up not using scenario_outline_line - im not sure what that was intended for in your POC.
but just looping over the scenario lines works. (see the loop on line 623) then i just pass a single item list as scenario_lines=[line]
i can see behave runs the tests properly this way but i can't figure out why the execution_codes and json_reports generated is incomplete when i do this approach.
given a feature file:
Feature: Example Table Tags
Background:
Given I have something
Scenario Outline: Foo From Example 1
Then I expect something
Examples:
| data |
| 1 |
| 2 |
Scenario Outline: Foo From Example 2
Then I expect something
Examples:
| data |
| 1 |
| 2 |when i run parallel-scheme=examples
then i expect this on
Actual
This only contains information on the last example on the example tables.
There was a problem hiding this comment.
would appreciate if you can provide some guidance here. thank you! i also updated the PR description to describe the general approach of the implem
|
Hi @iamkenos , Sorry for late reply, I have been really busy and I could not take care of the library changes as I would like to. |
No worries at all, I'm patiently keeping an eye out for updates and I'm real excited about this. Thanks so much for your time! 🤝 |
|
Hi @iamkenos, I hope you are doing fine. If you agree, I believe we are in conditions of merging your PR into version 4.1.0, and continue making all the improvements/changes using that release version. |
Hey @hrcorval , it's been a while. Yes that's fine, better that we don't rush this and make sure it's prod ready before we ship. I'm still flushing out possible issues and use cases for this, on and off. Progress has been slow since it's been hectic at work and the holidays are just around the corner. If you can share a rebased version of this branch that includes the latest 4.0.9 release, that would be real great. I'll continue working from there. Again, thank you so much for the time and patience. Advanced happy holidays to the behavex team! 🎄 |



Branch for #175
Breaking Change
--parallel-scheme=scenariowill run scenarios in parallel onScenariolevel. e.g. 1 process for eachScenario/ScenarioOutlineas opposed to 1 process for each example in the outline (current behavior as of writing)Feature
--parallel-scheme=exampleswhich is set to default - this does what--parallel-scheme=scenariobefore the change.General Approach Taken
if parallel scheme is
scenario,scenariolevel; we do this by passing all the scenario outline lines that matches the execution tags as part of the behave arguments.behave features/foo.feature:21 features/foo.feature:22 features/foo.feature:23behave features/foo.feature:31 features/foo.feature:32 features/foo.feature:33if parallel scheme is
examples,exampleslevel; we do this by passing each of the scenario outline line that matches the execution tags as part of the behave arguments.behave features/foo.feature:21behave features/foo.feature:22behave features/foo.feature:23behave features/foo.feature:31behave features/foo.feature:32behave features/foo.feature:33parallel-scheme=scenarioPending Issues