prashant-ramcharan / courgette-jvm

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

courgette.runtime.CourgetteTestErrorException while running the test in parallel #331

Closed MadhuQAAutomation closed 2 years ago

MadhuQAAutomation commented 2 years ago

Hi - I am using the Courgette-JVM library for running the test in parallel. When I execute the test from Test Runner, got the below exception: courgette.runtime.CourgetteTestErrorException: There were errors when running the test. Refer to the console for more information.

Process finished with exit code -2

When I try to run the same test from command line using mvn verify command, getting the below error :

java.io.IOException: Cannot run program "java": CreateProcess error=206, The filename or extension is too long at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071) at courgette.runtime.CourgetteFeatureRunner.run(CourgetteFeatureRunner.java:32) at courgette.runtime.CourgetteRunner.runFeature(CourgetteRunner.java:236) at courgette.runtime.CourgetteRunner.lambda$run$3(CourgetteRunner.java:85) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) Caused by: java.io.IOException: CreateProcess error=206, The filename or extension is too long at java.base/java.lang.ProcessImpl.create(Native Method) at java.base/java.lang.ProcessImpl.(ProcessImpl.java:487) at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:154) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)

Courgette Version : 6.4.2

MadhuQAAutomation commented 2 years ago

image

prashant-ramcharan commented 2 years ago

Hi,

This is a known issue on Windows OS.

You can use the Courgette classPath option to workaround this.

https://github.com/prashant-ramcharan/courgette-jvm-classpath-example

MadhuQAAutomation commented 2 years ago

Hi - I did the workaround as mentioned in the example. However, still its throwing the below exception:

image

image

Also, I have mentioned the correct glue path in the runner file. However step not defined message is displayed as well.

Undefined scenarios: 1 Scenarios (1 undefined) 16 Steps (15 skipped, 1 undefined)

image

prashant-ramcharan commented 2 years ago

Hi ,

  1. Did you manage to run the example project without any issues?

  2. Can you see the step def class in: target/test-classes/com/automation/steps ?

  3. Do you have a project to replicate this? It's difficult to debug without seeing the project setup, pom structure etc..

MadhuQAAutomation commented 2 years ago

Hi Prashant - Hi Prashant -I was able to run the test project with out any issue. I am also able to see the step def folder in target/test-classes/.... Folder too

Coming to project related, since it's official and company confidential, I might not be able to share.

Is it possible to setup call to go through this?

Thank you Madhu

On Sat, May 21, 2022, 00:18 Prashant Ramcharan @.***> wrote:

Hi ,

1.

Did you manage to run the example projec https://github.com/prashant-ramcharan/courgette-jvm-classpath-examplet without any issues? 2.

Can you see the step def class in: target/test-classes/com/automation/steps ? 3.

Do you have a project to replicate this? It's difficult to debug without seeing the project setup, pom structure etc..

— Reply to this email directly, view it on GitHub https://github.com/prashant-ramcharan/courgette-jvm/issues/331#issuecomment-1133209746, or unsubscribe https://github.com/notifications/unsubscribe-auth/AWIEGE2GSNBQHSI3OWUVV53VK7M6NANCNFSM5WBBKBYQ . You are receiving this because you authored the thread.Message ID: @.***>

prashant-ramcharan commented 2 years ago

Can you please provide the full output for the following:

mvn test -X

mvn dependency:tree

You can email the above output files if you prefer.

MadhuQAAutomation commented 2 years ago

Hi - Prashant - I have sent an email for the same.

prashant-ramcharan commented 2 years ago

Update: Issue was related to the Cucumber Glue in the Courgette runner.