It's timing out on trying to access the /about page, which seems to indicate that the Jenkins server didn't start properly.
Let me see if I can make the failure mode more obvious, so that we can see why server failed to start or died in the middle. 2014-03-14 6:21 GMT-07:00 Ulli Hafner <[email protected]>: > That sound very exciting! > > I just cloned the repository and tried to run the tests, however, none of > them succeeds. Maybe I’m missing still a part on my side. > > What I’ve done (environment OS X 10.9.2): > > a) command line > - clone of your repository > - started mvn test with path to war file > > b) IntelliJ JUnit > - Run of BuildHistoryTest > > c) IntelliJ > - Run of freestyle_build.feature > > I always get an exception: > > > ---------------------------------------------------------------------------------------------------------------------------------------- > com.google.inject.ProvisionException: Guice provision errors: > > 1) Error injecting constructor, java.lang.Error: Failed to wait for > condition org.jenkinsci.test.acceptance.po.CapybaraPortingLayer$1@51bea01c > at org.jenkinsci.test.acceptance.po.Jenkins.<init>(Jenkins.java:35) > at org.jenkinsci.test.acceptance.po.Jenkins.class(Jenkins.java:29) > while locating org.jenkinsci.test.acceptance.po.Jenkins > for field at core.BuildHistoryTest.j(BuildHistoryTest.java:19) > while locating core.BuildHistoryTest > > 1 error > at > com.google.inject.internal.Errors.throwProvisionExceptionIfErrorsExist(Errors.java:451) > at > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:65) > at > com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:944) > at > org.jenkinsci.test.acceptance.junit.JenkinsAcceptanceTestRule$1.evaluate(JenkinsAcceptanceTestRule.java:30) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) > at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > at org.junit.runner.JUnitCore.run(JUnitCore.java:160) > at > com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:74) > at > com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202) > at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) > Caused by: java.lang.Error: Failed to wait for condition > org.jenkinsci.test.acceptance.po.CapybaraPortingLayer$1@51bea01c > at > org.jenkinsci.test.acceptance.po.CapybaraPortingLayer.waitForCond(CapybaraPortingLayer.java:97) > at > org.jenkinsci.test.acceptance.po.CapybaraPortingLayer.waitForCond(CapybaraPortingLayer.java:107) > at > org.jenkinsci.test.acceptance.po.CapybaraPortingLayer.waitFor(CapybaraPortingLayer.java:70) > at org.jenkinsci.test.acceptance.po.Jenkins.getVersion(Jenkins.java:45) > at org.jenkinsci.test.acceptance.po.Jenkins.<init>(Jenkins.java:30) > at org.jenkinsci.test.acceptance.po.Jenkins.<init>(Jenkins.java:35) > at > org.jenkinsci.test.acceptance.po.Jenkins$$FastClassByGuice$$9bbc559e.newInstance(<generated>) > at > com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40) > at > com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60) > at > com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:85) > at > com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254) > at > com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) > at > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031) > at > com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) > at org.jenkinsci.test.acceptance.guice.World$1$1.get(World.java:74) > at > com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40) > at > com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53) > at > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110) > at > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75) > at > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73) > at > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024) > at > com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73) > at > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:60) > ... 20 more > Caused by: org.openqa.selenium.TimeoutException: Failed to wait for > condition org.jenkinsci.test.acceptance.po.CapybaraPortingLayer$1@51bea01c > Build info: version: '2.40.0', revision: > '4c5c0568b004f67810ee41c459549aa4b09c651e', time: '2014-02-19 11:13:01' > System info: host: 'duckjibe', ip: '10.0.0.107', os.name: 'Mac OS X', > os.arch: 'x86_64', os.version: '10.9.2', java.version: '1.7.0_45' > Driver info: driver.version: unknown > at > org.jenkinsci.test.acceptance.po.CapybaraPortingLayer.waitForCond(CapybaraPortingLayer.java:95) > ... 42 more > > > > ---------------------------------------------------------------------------------------------------------------------------------------- > > > Am 03.03.2014 um 06:42 schrieb Kohsuke Kawaguchi <[email protected]>: > > Vivek and I have ported all the lower layers of the test harness. This > includes JenkinsController, Docker support, Guice-based object world, > Cucumber integration, and JUnit integration. > > I can run tests from IDEs individually for both Cucumber and JUnit, > although I just realized that I haven't added glue to make all cucumber > tests run from "mvn test". JUnit portion obviously does run with "mvn test". > > We kept the configuration mechanism backward compatible, but I also added > a configuration mechanism based on Guice-binding [1]. > > I've added a set of classes to mimic Capybara methods that we use > regularly on top of WebDriver. This made the porting process fairly > straight-forward. > > Page objects and step definitions were ported by using test cases as the > driver (I rely on IntelliJ's auto-fix functionality to generate steps one > at a time.) So far I have only fully ported freestyle_project.feature, then > ant_plugin.feature to JUnit test format. There are still many more steps > and page objects to complete, although at this point I feel the rest of the > process is fairly mechanical --- so any help in porting feature files would > be appreciated. Just claim your feature file, and push your changes. > > So far, I'm hearing people favoring JUnit tests, including Oliver who is > the most active in this project. So I'm starting to think that maybe I'd > port other cucumber tests into JUnit format. I continue to welcome > feedbacks from others in this area. > > I need to document a lot of things, and I still intend to, but I have to > hack this coming week on something else. I plan on coming back to this in > the next weekend. In the mean time, hopefully the code is not too large and > simple enough for you everyone to see. > > > [1] > http://kohsuke.org/2014/03/01/potd-application-configuration-via-guice-binding-groovy/ > > > 2014-02-28 12:14 GMT-08:00 Kohsuke Kawaguchi <[email protected]>: > >> Stephen made a point to me in a dev meet-up at FOSDEM that he likes >> Cucumber in that tests are more readable (even to developers), even though >> he was sympathetic to the overhead for authors of tests. >> >> So I think I am going to leave them alone. Cucumber has another nice >> characteristic that tests that depend on not-yet-ported steps will be >> marked as pending, so I can see how far off I am from getting back to the >> parity. >> >> And yes, you will get the ability to write tests in plain-old JUnit4 >> tests (which I consider the porting from writing tests in rspec.) >> Personally, I'd be writing tests in plain-old JUnit4 tests on Groovy. >> >> I'm curious to hear from other users on their take on BDD/Cucumber vs >> JUnit. >> >> >> >> 2014-02-28 11:06 GMT-08:00 oliver gondža <[email protected]>: >> >> Mostly same story here with the exception I have never felt comfortable >>> or productive working in ruby. >>> >>> Btw, you have expressed dislike towards Cucumber/BDD style features in >>> the past. Can we take this opportunity to get rid of it as well? It should >>> not mean significantly more work and if it can bring new people in, I think >>> it might be worth to try. >>> >>> -- >>> oliver >>> >> >> >> >> -- >> Kohsuke Kawaguchi >> > > > > -- > Kohsuke Kawaguchi > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- Kohsuke Kawaguchi -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
