GitHub user ham1 opened a pull request: https://github.com/apache/jmeter/pull/350
Parallelised unit tests ## Description introduced `JMeterSerialTest` interface for tests which need to be run in sequence not concurrently. Re-wrote `TestFileServer` in Spock to use private constructor to get around singleton and make clearer to understand. Added a test listener to time and log to file time taken for each unit test. Also refactored/re-formatted some code while investigating parallel test failures. `ant _test` time on a 4 core laptop: before: 1m 19s after: 51s on an 8 core PC: before: 59s after: 31s I'd welcome more testing on different configurations and review. ## Motivation and Context Speed up feedback ## How Has This Been Tested? 100 iterations of `ant _test` on an 8 core machine 50 iterations of `ant _test` on a 4 core machine ## Screenshots (if appropriate): ## Types of changes <!--- What types of changes does your code introduce? Delete as appropriate --> - Dev improvement ## Checklist: - [x] My code follows the [code style][style-guide] of this project. - [x] I have updated the documentation accordingly. [style-guide]: https://wiki.apache.org/jmeter/CodeStyleGuidelines You can merge this pull request into a Git repository by running: $ git pull https://github.com/ham1/jmeter parallelise_unit_tests Alternatively you can review and apply these changes as the patch at: https://github.com/apache/jmeter/pull/350.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #350 ---- commit 8e1c2b65221bccdcf93e29da6cd1875d016685b5 Author: Graham Russell <gra...@ham1.co.uk> Date: 2017-12-06T17:32:55Z Parallelised unit tests. Introduced JMeterSerialTest interface for tests which need to be run individually in sequence not concurrently. Re-wrote TestFileServer in Spock to use private constructor to get around singleton. Also refactored/re-formatted some code while investigating parallel test failures. ---- ---