You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
JBehave Selenium Tutorials on the Etsy.com website
Tutorials in using jbehave-core, jbehave-web, and Selenium
against pre-existing website etsy.com to show how BDD allows the description and test of the behaviour of a web application.
Modules
The module 'etsy-selenium' runs (via maven) stories verifying the behaviour of Etsy.com. It uses Selenium to drive the web interaction and it has different sub-modules
depending on the language and dependency injection framework used: Groovy composed using Pico or Java composed using Spring.
The module 'etsy-web-runner' is a simple webapp that allows generic stories to be run. Note the app is not multiuser and not does support asynchronous
execution. It is not appropriate to run long-running stories. It is also useful as a web front-end to the DSL syntax defined in your steps.
Using Etsy.com
Etsy.com is a public live website that we treat as a black box and whose content we cannot control. As the structure of the application evolves,
some scenarios may fail because the underlying elements of the web pages are not found any more or the content categories have changed.
The objective of the tutorial is not to test the website itself but to show how its behaviour can be described in BDD terms and - as a consequence -
be made verifiable in an automated way. In this sense, failures are also a useful thing to have.
That said, we strive to keep up with the structure of Etsy.com so if you find that some scenarios fail due to changes in Etsy.com, feel free to
contribute a patch.
JBehave Web Runner for Etsy.com
Uses the 'etsy-selenium/java-spring' steps and makes them available via the JBehave Web Runner.
NOTE: The Web Runner is a standalone web application that provides a simple web interface for running the Etsy stories via the Java steps.
It does not run the (web) stories by command line.
Building with Maven
The tutorial modules can be built using the following Maven profiles:
groovy-pico
java-spring (default)
web-runner
To run default profile using latest stable versions:
mvn clean install -Pstable
To run another profile using latest stable versions:
Building the tutorial has been tested with Maven 3.0.5-3.2.1 and JDK 1.7. Newer versions of Maven and JDK should work but could also present issues.
If you find any, please report them via JIRA