Community Extension Helper library to visualize which parts of a BPMN process have been covered by a unit test
Java HTML
Clone or download
Permalink
Failed to load latest commit information.
core [maven-release-plugin] prepare for next development iteration Oct 24, 2017
doc/img doc(readme): reduce readme file to the essentials - further documenta… Sep 8, 2016
test [maven-release-plugin] prepare for next development iteration Oct 24, 2017
.gitignore Ignore javadoc Apr 3, 2016
.travis.yml fix(travis): add workaround for host resolution according to travis-c… Oct 24, 2017
CONTRIBUTING.md 0.2.6 new system property feature Feb 29, 2016
IMPLEMENTATION.md Readme fixes. Jul 28, 2016
LICENSE
README.md chore(readme): fix version information in readme Oct 24, 2017
class-diagram.png Implementation markdown updated. Minor refactoring. Apr 4, 2016
class-diagram.ucls Implementation markdown updated. Minor refactoring. Apr 4, 2016
elab_logo.png
pom.xml [maven-release-plugin] prepare for next development iteration Oct 24, 2017
screenshot.png Updated markdown. Apr 4, 2016

README.md

 Camunda BPM Process Test Coverage 

This Camunda BPM community extension visualises test process pathes and checks your process model coverage ratio. Running typical JUnit tests now leaves html files in your build output. Just open one and check yourself what your test did:

Insurance Application

Highlights

  • Visually verify the pathes covered by individual tests methods and whole test classes
  • Visually check gateway expressions and transaction borders (savepoints) used by your process
  • Calculate and verify the nodes (and sequence flow) coverage ratio reached by tests methods and classes

Just use it

  • Integrates with all versions of Camunda BPM starting with 7.3.0 and upwards
  • Works with all relevant Java versions: 1.6, 1.7 and 1.8 - using JUnit 4.12 (4.11 does not work)
  • Is continuously checked against latest Camunda BPM releases - see the full travis-ci matrix for details

Get started with 3 simple steps

1. Add a Maven test dependency to your project

<dependency>
  <groupId>org.camunda.bpm.extension</groupId>
  <artifactId>camunda-bpm-process-test-coverage</artifactId>
  <version>0.3.2</version>
  <scope>test</scope>
</dependency>

2. Use the ProcessCoverageInMemProcessEngineConfiguration, e.g. in your camunda.cfg.xml

<bean id="processEngineConfiguration"
   class="org.camunda.bpm.extension.process_test_coverage.junit.rules.ProcessCoverageInMemProcessEngineConfiguration">
   ...
</bean>

3. Use the TestCoverageProcessEngineRule as your process engine JUnit rule

@Rule
@ClassRule
public static ProcessEngineRule rule = TestCoverageProcessEngineRuleBuilder.create().build();

Running your JUnit tests now leaves html files for inidividual test methods as well as whole test classes in your project's target/process-test-coverage folder. Just open one, check yourself - and have fun with your process tests! 😄

New! Get Started with Spring Testing

See a unit test example wired for Spring Testing here.

Further resources

Maintenance

The software development team of WDW eLab GmbH is responsible for the design and implementation of this project.

Screenshot

WDW eLab GmbH is an innovative IT company and has great experience with complex business support processes in complex IT environments. One of our specialties are customer support processes in telecommunications. We are proud to be an official Camunda BPM partner! Feel free to contact us via Email!

Contributors

Irmin Okic (wdw-elab)

Axel Groß (wdw-elab)

Falko Menge (Camunda)

Martin Schimak (plexiti)

License

Apache License, Version 2.0. See LICENSE file.