lazybones
lazybones copied to clipboard
Speed up integration tests
These are taking too long, and it's only going to get worse as more tests are added. As usual, there are two main vectors of attack:
- reduce the time a single feature method takes to run; and
- parallelise the test suite.
Not sure we'll get very far with the first of these unless there is some problem causing Lazybones to execute slowly in some tests, perhaps because of network timeouts, or heap thrashing (unlikely). It might be worth considering running them in a single JVM, but then it's not being run quite the same way as a user runs it.
Due to the amount of IO involved, parallelisation should help a lot. The tricky part is ensuring that no tests try to access the same part of the filesystem at the same time and that the Betamax server is shared between all test cases. In addition, if there is any recording to tapes, the tests can't be run parallelised since there could be contended writes.