I am using ATH to test a jenkins pipeline library.
It looks like selenium timesout trying to wait until all the plugins are installed.
The piece of code is in
https://github.com/jenkinsci/acceptance-test-harness/blob/master/src/main/java/org/jenkinsci/test/acceptance/po/UpdateCenter.java The tests fail most of the time due to this time out exception.
Stack trace -
Cleaning up temporary JENKINS_HOME failed, retrying in 5 sec.
org.openqa.selenium.TimeoutException: Timed out after 60 seconds: not contains element that matches By.xpath: //*[@id='log']//*[contains(.,'Pending') or contains(.,'Installing')]. was <org.openqa.selenium.support.events.EventFiringWebDriver@25a94b55>
Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46'
at org.openqa.selenium.support.ui.FluentWait.timeoutException(FluentWait.java:292)
at org.jenkinsci.test.acceptance.junit.Wait.timeoutException(Wait.java:159)
at org.openqa.selenium.support.ui.FluentWait.until(FluentWait.java:261)
at org.jenkinsci.test.acceptance.junit.Wait.until(Wait.java:144)
at org.jenkinsci.test.acceptance.junit.Wait.until(Wait.java:110)
at org.jenkinsci.test.acceptance.po.CapybaraPortingLayerImpl.waitFor(CapybaraPortingLayerImpl.java:192)
at org.jenkinsci.test.acceptance.po.UpdateCenter.waitForInstallationToComplete(UpdateCenter.java:74)
at org.jenkinsci.test.acceptance.po.PluginManager.installPlugins(PluginManager.java:260)
at org.jenkinsci.test.acceptance.junit.WithPlugins$RuleImpl$1.installPlugins(WithPlugins.java:177)
at org.jenkinsci.test.acceptance.junit.WithPlugins$RuleImpl$1.evaluate(WithPlugins.java:130)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
at org.jenkinsci.test.acceptance.junit.JenkinsAcceptanceTestRule$1$2$1.evaluate(JenkinsAcceptanceTestRule.java:175)
at org.jenkinsci.test.acceptance.junit.FilterRule$1.evaluate(FilterRule.java:63)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
at org.jenkinsci.test.acceptance.junit.JenkinsAcceptanceTestRule$1.evaluate(JenkinsAcceptanceTestRule.java:60)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)