Skip to content

Zucchini UI - Record and analyze your Cucumber results

License

Notifications You must be signed in to change notification settings

achoimet/zucchini-ui

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Zucchini UI

Record and analyze your Cucumber results.

Requirements

  • JDK 8
  • Node
  • Mongo

Build

First time, install NPM dependencies:

./gradlew npmInstall

Build application with Gradle:

./gradlew build

Warning: when Gradle is launched with Intellij, the PATH environment variable doesn't always contain path to Webpack. If this is the case, relaunch Gradle daemon:

./gradlew --stop
./gradlew build

Develop

Run Mongo database server:

mongod &

Run Mongo migrations to build database:

(cd zucchini-ui-mongo && ./migrate.sh MONGO_HOST/MONGO_DATABASE)

Start Java backend:

./gradlew runBackend

Start frontend:

(cd zucchini-ui-frontend && npm run dev)

Open your browser to :

http://localhost:9000

You can build sample Cucumber reports from the zucchini-ui-example-features:

./gradlew dryRunCucumber runCucumber

Generated reports can be found in build directory.

Deploy

The sub-project zucchini-ui-capsule builds a fat Capsule that contains in one JAR backend and UI. This JAR contains everything that is needed to run the Zucchini UI app.

You can run it from Gradle:

./gradlew runCapsule

The fat Capsule JAR is named zucchini-ui-capsule-VERSION-SNAPSHOT-capsule.jar. Run it with this command:

java -jar zucchini-ui-capsule-VERSION-SNAPSHOT-capsule.jar server CONFIG.yml

Don't forget to init your Mongo database !

(cd zucchini-ui-mongo && ./migrate.sh MONGO_HOST/MONGO_DATABASE)

Build and deploy a Docker image

You can build a Docker image for the Capsule:

./gradlew dockerBuild

The Docker image will be built in repository pgentile/zucchini-ui. After that, you can run the Docker image with the following command:

docker run -p 8080:8080 -e TC_MONGO_URL=mongodb://MONGO_URI pgentile/zucchini-ui

You can find some pre-built images in Docker Hub.

Configuration

The configuration file used by the application is a Dropwizard YAML file.

You can use in your file environment variable, like ${HOME} ou ${USER}. View the sample configuration file for more information.

Architecture

Used frameworks:

Validating that a JSON report can be parsed

./gradlew runJsonImporter -PjsonFilePath=...

Contributing

See the contributing guide

About

Zucchini UI - Record and analyze your Cucumber results

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 64.2%
  • JavaScript 19.7%
  • HTML 13.2%
  • Groovy 1.8%
  • Gherkin 0.5%
  • Shell 0.3%
  • CSS 0.3%