You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Tibor Digana (Jira)" <ji...@apache.org> on 2020/01/04 03:14:00 UTC

[jira] [Assigned] (SUREFIRE-1725) Surefire in JUnit Vintage mode distributes tests very unevenly between forks, causing poor parallelism

     [ https://issues.apache.org/jira/browse/SUREFIRE-1725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tibor Digana reassigned SUREFIRE-1725:
--------------------------------------

    Assignee: Tibor Digana

> Surefire in JUnit Vintage mode distributes tests very unevenly between forks, causing poor parallelism
> ------------------------------------------------------------------------------------------------------
>
>                 Key: SUREFIRE-1725
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1725
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: Junit 4.x support, JUnit 5.x support, Maven Surefire Plugin
>    Affects Versions: 3.0.0-M3
>            Reporter: Gareth Daniel Smith
>            Assignee: Tibor Digana
>            Priority: Major
>             Fix For: 3.0.0-M5
>
>         Attachments: junit-5-vintage-bug.zip
>
>
> To reproduce this issue, please run the attached test case using {{mvn clean verify}}
> You will see output similar to the following:
> {code:java}
> [INFO]  T E S T S
> [INFO] -------------------------------------------------------
> [INFO] Running My7Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.017 s - in My7Test
> [INFO] Running My9Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.983 s - in My9Test
> [INFO] Running My4Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.998 s - in My4Test
> [INFO] Running My8Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.999 s - in My8Test
> [INFO] Running My6Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.001 s - in My6Test
> [INFO] Running My1Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1 s - in My1Test
> [INFO] Running My5Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.999 s - in My5Test
> [INFO] Running My3Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.997 s - in My3Test
> [INFO] Running My2Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1 s - in My2Test
> [INFO] Running My0Test
> Test in process 32569
> [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.999 s - in My0Test
> {code}
> Notice how all 10 tests are being run on the same process. This is wrong because there should be 5 forks - and the tests should be evenly distributed between them.
> If Junit4 is used instead of Junit5+vintage (see the commented dependency in pom.xml) then this issue does not occur (probably because Surefire uses a different code path in that case).
> Please note that this issue was originally logged against Junit ([https://github.com/junit-team/junit5/issues/2114)] - but they suggested the problem lies within surefire.
> Thanks for any help!



--
This message was sent by Atlassian Jira
(v8.3.4#803005)