An open-source expert system for automated end-to-end objective-driven performance testing and performance insights.
Clone or download
Latest commit ce3f988 Aug 24, 2017
Permalink
Failed to load latest commit information.
benchflow-client Ports and Update the BenchFlow Client May 5, 2017
benchflow-data-manager Minor changes to adapt to style guidelines Mar 23, 2017
benchflow-driver-maker Activate static checks in remaining projects May 12, 2017
benchflow-dsl Updates demo converter to include mix under configuration Aug 23, 2017
benchflow-experiment-manager Bumps FabanClient version for EM and TM Aug 23, 2017
benchflow-faban-client Fixes a couple of wrong Comments Aug 23, 2017
benchflow-minio-client Solves PMD Reported Issues for Minio Client Aug 2, 2017
benchflow-test-manager Bumps FabanClient version for EM and TM Aug 23, 2017
devops Adds benchflow client build trigger May 5, 2017
docker-images Updates the jdk8 download url May 22, 2017
docs Fixes typos Jun 20, 2017
tests/data/dsl-examples Fixes issue that exploration space was not generated correctly in all… Aug 18, 2017
.codacy.yml Updates Codacy Conf. File Jul 19, 2017
.gitignore Changes Faban Manager to call trial resource when a trial has been ex… Aug 21, 2017
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Jun 19, 2017
CONTRIBUTING.md Create CONTRIBUTING.md Jun 19, 2017
LICENSE Update LICENSE Feb 25, 2016
README.md Adds a commit to test DevOps first build Apr 3, 2017
checkstyle.xml Renames CheckStyle Conf. File for Codacy Jul 19, 2017
eclipse-java-google-style.xml Changing Java formatting plug-in (#283) May 12, 2017
package.json Adds DevOps to the Single Repo Setup (#113) Apr 3, 2017
pom.xml Merge pull request #495 from benchflow/fix-devops-maven-build Aug 2, 2017
scalastyle-config.xml Turning off checks on indentation Mar 30, 2017
wercker.yml Improves Maven Build Goals Aug 2, 2017

README.md

BenchFlow

BenchFlow is an open-source expert system providing a complete platform for automating performance tests and performance analysis. We know that not all the developers are performance experts, but in nowadays agile environment, they need to deal with performance testing and performance analysis every day. In BenchFlow, the users define objective-driven performance testing using an expressive and SUT-aware DSL implemented in YAML. Then BenchFlow automates the end-to-end process of executing the performance tests and providing performance insights, dealing with system under test deployment relying on Docker technologies, distributing simulated users load on different server, error handling, performance data collection and performance metrics and insights computation.

Quick links: BenchFlow Documentation | TODO - also link to the documentation

TODO (try BenchFlow)

Purpose

TODO (BenchFlow has a strong focus on developer happiness & ease of use, and a batteries-included philosophy.)

Current project focus

The BenchFlow expert system is currently mainly focused on enabling the performance benchmark of Workflow Management Systems supporting the BPMN 2.0 modeling and execution language. Despite the main focus, most of its components are reusable and already general enough to support performance benchmarks of generic Web Services. We strongly encourage extending BenchFlow by adding missing functionalities specific to your particular benchmarking needs. TODO ([point to setup and getting started]). Website related to the current focus: http://benchflow.inf.usi.ch.

We have a temporary logo, we are going to have a proper logo at some point in the future.

Upcoming project focus

(TODO) automated objective-driven performance testing, and integration in continuous software improvement lifecycle.

Features (Why BenchFlow?)

TODO (also link to the documentation)

definition of a performance benchmark/test through a dedicated DSL; automatisation of the deployment of the System Under Test on distributed infrastructures using Docker; reliable execution of the performance benchmark using Faban; data collection and cleaning; data analysis in the form of computed metrics and KPIs.

Use Cases

TODO (to show the uses of the tool, linking to an actual article explaining how to do that, point also to controbuting for extending)

Installation or Upgrade

TODO (explain current project state in dev, and link to docs and uses to state that it is usable, but not 100% battle tested)

TODO (getbenchflow in container for client and docs for the rest [also links to docker hub if needed, ot least in the developer documentation], current release. Explain: Docker as prerequisite)

(TODO, maybe at the top) Project Status: The project is currently in active development and is tested on Mac OS X for the client command line side tools, and Ubuntu 14.04.2 LTS for the server side tools. The main project branch is devel [maybe for now say that there are no release yet, but we are in the process of having the first release]

Getting Started

Prerequisites

TODO (simplest example, then links to the docs for advanced stuff)

Installing

TODO (needs help or customisation, write contacts)

Built With

TODO

Contributing

TODO (also related to extending to custom software, and links to developer documentation and TODOs)

Versioning

TODO (SemVer + link to docs)

Authors

TODO

License

Copyright © 2014-2017, Vincenzo Ferme for own and contributors committed code and artefacts.

The license for all the not third-party code in the BenchFlow repositories is RPL-1.5, unless otherwise noted