[GitHub] jmeter pull request #350: Parallelised unit tests

2017-12-07 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/jmeter/pull/350


---


[GitHub] jmeter pull request #350: Parallelised unit tests

2017-12-06 Thread ham1
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

- 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 
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.




---