prashant-ramcharan / courgette-jvm

Multiprocess | Parallel Cucumber-JVM | Parallelize your Java Cucumber tests on a feature level or on a scenario level.
MIT License
133 stars 39 forks source link

Separate JVM process per Feature file? #276

Closed pagmoro closed 3 years ago

pagmoro commented 3 years ago

Hi Prashant,

I was looking at this old thread - https://github.com/prashant-ramcharan/courgette-jvm/issues/75 and was wondering if you still have the ability to run a separate JVM process per feature file? From the latest documentation it looks like you only support different threads.

Thank you

prashant-ramcharan commented 3 years ago

Hi @pagmoro

Courgette has always created a separate JVM process for each feature / scenario and each JVM process will start a single thread.

Hope this helps.

pagmoro commented 3 years ago

That is great , so when we specify threads = 5 in Courgette options , it is actually 5 different processes?

On Thu, May 6, 2021, 03:47 Prashant Ramcharan @.***> wrote:

Hi @pagmoro https://github.com/pagmoro

Courgette has always created a separate JVM process for each feature / scenario and each JVM process will start a single thread.

Hope this helps.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/prashant-ramcharan/courgette-jvm/issues/276#issuecomment-833308475, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARHAPST7UU34UIDVVGQJ3NDTMJCPJANCNFSM44F2VDUQ .

prashant-ramcharan commented 3 years ago

Yes, that's correct.

Each "thread" defined in the Courgette runner would effectively create a separate JVM process.

I've updated the README to better reflect this.

Thanks.

pagmoro commented 3 years ago

Thank you - just to be clear - If we have 20 feature files , there would be 20 separate jvm processes in total (For Feature level option) , but at any given time there would be 5 running in parallel. As and when the process finishes , it would create new processes capped to 5 at a time?

Thanks

On Thu, May 6, 2021 at 8:45 AM Prashant Ramcharan @.***> wrote:

Yes, that's correct.

Each "thread" defined in the Courgette runner would effectively create a separate JVM process.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/prashant-ramcharan/courgette-jvm/issues/276#issuecomment-833492638, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARHAPSVOBI4EVIWQUUYR7OTTMKFM5ANCNFSM44F2VDUQ .

prashant-ramcharan commented 3 years ago

Yes, that's exactly right.

You'd only ever have X number of running processes at any one time.

threads (value defined in your Courgette runner) = X (JVM processes)

If you have 20 feature files and you set the threads to 3 in your runner, only 3 processes would run at any one time until all features are run.