A backend to record Cucumber results. An UI to read results.
- JDK 8
- Node
- Bower
- Grunt
- Mongo
First time, install Bower dependencies and init Gradle build for Node component:
(cd tests-cucumber-ui && npm install && bower install)
Build application with Gradle:
./gradlew build
Warning: when Gradle is launched with Intellij, the PATH environment variable doesn't always contain path to Grunt. If this is the case, relaunch Gradle daemon:
./gradlew --stop
./gradlew build
Run Mongo with Docker Compose:
docker-compose up
Run Mongo migrations to build database:
(cd tests-cucumber-mongo && ./migrate.sh MONGO_HOST/MONGO_DATABASE)
Start Java backend:
./gradlew runBackend
Start UI:
(cd tests-cucumber-ui && grunt serve)
You can build sample Cucumber reports from the tests-cucumber-example-features
:
./gradlew dryRunCucumber runCucumber
Generated reports can be found in build
directory.
The sub-project tests-cucumber-capsule
builds a fat Capsule that contains in one JAR
backend and UI. This JAR contains everything that is needed to run the TestsCucumber app.
You can run it from Gradle:
./gradlew runCapsule
The fat Capsule JAR is named tests-cucumber-capsule-VERSION-SNAPSHOT-capsule.jar
. Run it with this command:
java -jar tests-cucumber-capsule-VERSION-SNAPSHOT-capsule.jar server CONFIG.yml
Used frameworks:
- UI project: AngularJS
- Backend project: Dropwizard, Spring, Morphia, Orika