Distributed Testing

summary: Splitting test execution across multiple processes on different machines. status: Post 1.0 code: planned

Automated tests are often take up the bulk of the execution time for a given build. The parallel testing support in Gradle 0.9 helps to address this problem, by splitting test execution across multiple processes on the build machine. We will extend this to allow tests to be executed in multiple processes running on different machines. This way, tests, in particular functional tests, can be scaled horizontally to take advantage of a pool of many build and test machines.

Distributed testing will use exactly the same infrastructure as distributed building.

Possible reference implementation => http://test-load-balancer.github.com/

I guess this would benefit from being integrated with build servers, so it could take advantage of the slave infrastructure already in place.