finally got my JBehave test up and running :-) even without maven/m2eclipse plugin
Thanks Clemens -------- Original-Nachricht -------- > Datum: Mon, 2 Aug 2010 16:52:30 +0200 > Von: Mauro Talevi <[email protected]> > An: "[email protected]" <[email protected]> > Betreff: Re: [jbehave-user] Re: JBehave 3 with Selenium (in Eclipse) - > example? > Clemens, > > If you pull latest master of jbehave-web git repo, you'll find under > examples a module - trader-runner-stories - that can be run in an IDE. To run > in > Eclipse you need m2eclipse installed. Read the RUN-IN-IDE.txt to see how > to start jetty and selenium servers. You need to build entire web project > from root: > > mvn clean install -Pexamples > > Note that ATM it only works in IDE and fails in CLI. > Work in progress. > > > On 2 Aug 2010, at 14:27, "Clemens Wyss" <[email protected]> wrote: > > > I am still struggling with this simple example. I fetched the 3.0 > sources from git. Could partially build jbehave-core from the sources (at > least > the classes) with maven and created a jbehave-core.jar with "jar cf ...". I > adopted the trade example to my needs BUT am still not able to run any > jbehave test from within Eclipse > > > > I would very much appreciate a simple running example (preferably as an > Eclipse project). > > > > Also, does the jbehave Eclipse plugin still exist? > > > > And: when will the current 3.0 trunk be available as a downloadable zip, > because I am pretty sure I don't have a complete build (see above) at > hand. > > > > Thx > > Clemens > > > > ----- Ursprüngliche Nachricht ----- > > Von: Clemens Wyss > > Gesendet: 31.07.10 12:45 Uhr > > An: [email protected] > > Betreff: Re: [jbehave-user] Re: JBehave 3 with Selenium (in Eclipse) - > example? > > > > Hi Mauro,thanks for your reply (grazie),Say I have a simple > google.storySceanrio: GoogleGiven I am on google.comWhen I search for > 'jbehave'Then I > should see 'jbehave.org'How would GoogleSteps.java and Google.java look like > when I want to drive my tests with selenium from within Eclipse (JUnit > Runner)? ThanksClemens-------- Original-Nachricht --------> Datum: Sat, 31 Jul > 2010 11:14:01 +0200> Von: Mauro Talevi <[email protected]>> An: > [email protected]> Betreff: [jbehave-user] Re: JBehave 3 with > Selenium (in Eclipse) - example?> Hi Clemens,> > first off, welcome to JBehave > world!> > One thing I've noticed is that you were extending > SeleniumPerStorySteps> (which extends Steps) but then using the > InstanceStepsFactory. I've > now> made the Selenium Steps classes POJOs and thus can be used with the> > factory. Please try pulling latest master snapshot.> > Also, the point of > extending the Selenium Steps classes is that they> provide the Selenium > instance and start/stop > > it for you. If you want to> do that yourself (in your constitutional > right as a JBehaver! :-) you> don't need to extend any class.> > In general, > it'd be useful if you could provide us with the full source> code of your > example, in a zip file, so we can try to reproduce issues.> > Cheers> > On > 31/07/2010 09:53, Clemens Wyss wrote:> > Coming from Rails/cucumber I am very > pleased to find JBehave in the Java> world :-)> > I am trying to get my > JBehave 3/Selenium tests running, but weird things> happen with selenium > (startup). selenium starts up BUT weird URLS (file> paths) are being sent. I > have "plain" selenium test (SeleneseTestCase) which> run, i.e. selenium et al > are setup correctly.> > > > I guess it has to do with the > @BeforeStory/@AfterStory...?> > > > I have > > > > i_can_login.story:> > > -------------------> > > > Scenario: User can login> > > > Given nobody is > logged in> > > When I login as 'clemens' with password 'pw'> > Then I should see 'Clemens > Wyss'> > > > > > IC > > anLogin.java:> > ------------------> > package > ch.mysign.integrationtests;> > > > import org.jbehave.core.JUnitStory;> > > import > org.jbehave.core.configuration.Configuration;> > import > org.jbehave.core.configuration.MostUsefulConfiguration;> > import > org.jbehave.core.io.LoadFromClasspath;> > > import org.jbehave.core.io.UnderscoredCamelCaseResolver;> > import > org.jbehave.core.reporters.StoryReporterBuilder;> > import > org.jbehave.core.steps.InstanceStepsFactory;> > import org.junit.Test;> > > > > public class ICanLogin > extends JUnitStory> > {> > public ICanLogin ()> > {> > ClassLoader classLoader > = this.getClass().getClassLoader();> > Configuration configuration = new > MostUsefulConfiguration()> > .useStoryPathResolver(new > UnderscoredCamelCaseResolver(".story"))> > .useStoryLoader( new > LoadFromClasspath(classLoader) > )> > .useStoryReporterBuilder(new StoryReporterBuilder()> > > .withDefaultFormats()> > .withFailureTrace(false)> > );> > > useConfiguration(configuration);> > addSteps( new > > InstanceStepsFactory( configuration, new> SeleniumLoginSteps() )> > > .createCandidateSteps() ); // varargs, can have lots of steps> > }> > > > > @Test> > public void runScenario () throws Throwable> > {> > super.run();> > } > > > }> > > > SeleniumLoginSteps.java:> > ----------------------------> > > package ch.mysign.integrationtests;> > > > import junit.framework.Assert;> > > > > import org.jbehave.core.annotations.AfterStory;> > import > org.jbehave.core.annotations.BeforeStory;> > import > org.jbehave.core.annotations.Given;> > > import org.jbehave.core.annotations.Then;> > import > org.jbehave.core.annotations.When;> > import > org.jbehave.web.selenium.SeleniumPerStorySteps;> > > > > import com.thoughtworks.selenium.DefaultSelenium;> > import > com.thoughtworks.selenium.Selenium;> > > > public class SeleniumLoginSteps > extends > SeleniumPerStorySteps> > {> > static int EMBEDDED_TOMCAT_PORT = 8080;> > > static int SELENIUM_PORT = 4444;> > private Selenium selenium = null;> > > > > @BeforeStory> > pub > > lic void setupSelenium()> > {> > selenium = new DefaultSelenium( > "localhost", SELENIUM_PORT,> "*iexplore", "http://localhost:" + > EMBEDDED_TOMCAT_PORT + "/" );> > selenium.start();> > }> > > > @AfterStory> > > public void > tearDownSelenium()> > {> > selenium.close();> > }> > > > @Given("nobody is > loged in")> > public void nobodyIsLoggedIn()> > {> > AdminLoginPage.logout( > selenium );> > }> > > > @When("I login as '$username' with password > '$password'")> > public void loginAs(String username, String password)> > {> > > AdminLoginPage.loginAs( selenium, username, password );> > }> > > > @Then("I > should see '$seen'")> > public void iShouldSee(String seen)> > {> > > Assert.assertTrue( selenium.isTextPresent( seen ) );> > }> > > > }> > > ----------> > I > also looked (and adapted)> > http://jbehave.org/reference/latest/running-stories.html, but this code does > not compile (StoryFinder, asList,> > storyClass). > > > > > > So my question is: can anybody provide a JBehave > 3/Selenium > example> which fo > > r example makes a google search?> > > > > > Thx in advance> > Clemens> > > > > ---------------------------------------------------------------------> > > To unsubscribe from this list, please visit:> > > > > http://xircles.codehaus.org/manage_email> > > > > > > > > > > ---------------------------------------------------------------------> To > unsubscribe from this list, please > visit:> > http://xircles.codehaus.org/manage_email> > -- Neu: GMX De-Mail - > Einfach wie E-Mail, sicher wie ein Brief! Jetzt De-Mail-Adresse > reservieren: > http://portal.gmx.net/de/go/demail---------------------------------------------------------------------To > unsubscribe from this list, please visit: > http://xircles.codehaus.org/manage_email > > > > --------------------------------------------------------------------- > > To unsubscribe from this list, please visit: > > > > http://xircles.codehaus.org/manage_email > > > > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > -- Sicherer, schneller und einfacher. Die aktuellen Internet-Browser - jetzt kostenlos herunterladen! http://portal.gmx.net/de/go/chbrowser --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
