Hi, I assume with (b) you mean: change tests to use loops, combined with very high timeouts. Example:
Before: save(); Thread.sleep(1000); assertTrue(abc()); After: save(); for(int i=0; !abc() && i<600; i++) { Thread.sleep(100); } assertTrue(abc()); The additional benefit of this logic is that on a fast machine, the test is faster (only 100 ms sleep instead of 1 second). Disadvantage: additional complexity, as you wrote (could be avoided with Java 8 lambda expressions). Regards, Thomas On 21/02/17 13:49, "Michael Dürig" <mdue...@apache.org> wrote: > >Hi, > >I assume that at least some of the tests that sporadically fail on the >Apache Jenkins fail because of timing issues. To address this we could >either > >a) skip these tests on Jenkins, >b) increase the time-out, >c) apply platform dependent time-outs. > > >I would prefer b). I presume that there is no impact on the build time >unless the build fails anyway because it is running into one of these >time-outs. If this is not acceptable we could go for b) and provision >platform dependent time-outs through the CIHelpers class. I somewhat >dislike the additional complexity though. As last resort we can still do >a). > >WDYT? > >Michal