Skip to content

feat: add --parallel-chunk-size option#80

Merged
Daniel-Marynicz merged 1 commit intoDaniel-Marynicz:mainfrom
mRoca:feat/chunk-size
Jan 20, 2026
Merged

feat: add --parallel-chunk-size option#80
Daniel-Marynicz merged 1 commit intoDaniel-Marynicz:mainfrom
mRoca:feat/chunk-size

Conversation

@mRoca
Copy link
Copy Markdown
Contributor

@mRoca mRoca commented Jan 19, 2026

Behat handles multiple paths as argument since Behat/Behat#1611

By implementing it in this extension, we can re-use the same bootstrapped behat kernel for many tests at once, while keeping the parallelization. On projects with a big starting overhead, we can accelerate tests a lot.

I've tested my branch on a project with 205 feature files and options --parallel-feature 6 with and without --parallel-chunk-size 10: 42s -> 32s (~25% faster).

And thank you very much for this nice project !

Some remarks about this PR and the project

PHP version

While Behat does not support php <= 8.1, this project still allows php 7.2. I've kept the old not-typed syntaxe.

--rerun and features

Even if the README says that --rerun is not available for --parallel-feature, it seems to be fully working on my branch (and in features/chunk-size.feature)

Missing qa tools

phpunit & behat tests are 100% passing on this branch, but there are some issues on the main branch with phpcs & phpstan :

  • phpcs / phpstan dev dependencies are not in the composer.json file but only in the .github workflow file
  • if I run them locally on the master branch, phpstan find 24 errors and phpcs 3 errors
  • Github actions are not running anymore because ubuntu-20.04 is not available anymore for github actions

@Daniel-Marynicz
Copy link
Copy Markdown
Owner

Daniel-Marynicz commented Jan 19, 2026

Thank you for this contribution.
I do not have time for this project. Probably phpcs / phpstan i will remove from the workflow.

@mRoca
Copy link
Copy Markdown
Contributor Author

mRoca commented Jan 19, 2026

Thank you for this contribution. I do not have time for this project. Probably phpcs / phpstan i will remove from the workflow.

I can create another PR to fix phpstan / phpcs and the CI if you want

@Daniel-Marynicz
Copy link
Copy Markdown
Owner

Daniel-Marynicz commented Jan 19, 2026

You can remove phpstan/phpcs and addd to workflow tests current php versions , update ubuntu version.

@Daniel-Marynicz
Copy link
Copy Markdown
Owner

Daniel-Marynicz commented Jan 19, 2026

and when will be ready then i run workflow tests this in github action. Thank you.

@Daniel-Marynicz
Copy link
Copy Markdown
Owner

and please add current symfony version to the tests matrix

@Daniel-Marynicz
Copy link
Copy Markdown
Owner

Please resolve conflicts.

@mRoca
Copy link
Copy Markdown
Contributor Author

mRoca commented Jan 20, 2026

Please resolve conflicts.

I know, you've just merged my first PR, give me 2 secs :-)

I'll have to disable the chunk feature for old behat versions that do not support it

@Daniel-Marynicz Daniel-Marynicz merged commit 09cde66 into Daniel-Marynicz:main Jan 20, 2026
7 checks passed
@mRoca mRoca deleted the feat/chunk-size branch January 21, 2026 09:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants