I would like to discuss some ideas to further speed up our itests.
Ideas:
- Split our jenkins builds into itest and deploy builds: On a local
machine the itest build finishs now in about 10 minutes. On jenkins the
build still takes over 40 minutes. Most of the time is spent on doing
the deploy part. So I propose to have two builds for each branch. One
itest build for fast developer feedback that runs after each commit and
one deploy build to keep the snapshots current that only runs once per day.
- Use PerClass for the feature tests and uninstall each feature before
the next test method runs. This brings the full build down to 5 minutes
on my machine. It works quite well. I will commit this if the tests are
stable on my machine.
- Use PerSuite for all non destructive tests (basically all tests that
should not change the karaf instance they run in). Pax exam now allows
to start the container only once for a whole suite of tests. We probably
need to move these tests in a separate maven project. This should
further speed up the tests quite a lot as most of our tests are non
destructive. I will have to do some more tests about this.
So what do you think?
Christian
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
http://www.talend.com