You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "NAthan McDonald (JIRA)" <ji...@codehaus.org> on 2014/03/20 14:29:59 UTC

[jira] (SUREFIRE-1070) Forks would complete more uniformly if slow tests aren't run last

NAthan McDonald created SUREFIRE-1070:
-----------------------------------------

             Summary: Forks would complete more uniformly if slow tests aren't run last
                 Key: SUREFIRE-1070
                 URL: https://jira.codehaus.org/browse/SUREFIRE-1070
             Project: Maven Surefire
          Issue Type: Improvement
            Reporter: NAthan McDonald
            Priority: Minor


Have started using forkCount to use multiple forks when running unit/IT tests.

We've got a handful of slow tests, but without more than 1 fork, makes no difference in the order they run.

However once we forked (we use 4 forks, on 8 cores), I noticed one or two forks run longer than the others, completing our slow tests.

Ideally we want each fork to execute in the same time, but this presents packing problem.

At simplest term, seems improvements would be achieved if we ensured we ran slow tests first, dividing these up among the initial forks.  I've got this as a workaround, by configuring runOrder to be alphabetical, and renaming/moving slow tests to an aaslow package, and can see performance improvements.  This is not ideal though.

For a few known slow classes, could have a means to specify them.  Otherwise was thinking would be nice if we annotated slow tests with junit categories, and then could specify forked mode to run certain categories first.  Guess the solution is up for debate, but this does provide significant gains in performance would be nice for a way to tweak the runner without having to move tests to different paths.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)