/camunda-bpm-process-test-coverage

Community Extension Helper library to visualize which parts of a BPMN process have been covered by a unit test

Primary LanguageJavaApache License 2.0Apache-2.0

 Camunda BPM Process Test Coverage 

This Camunda BPM community extension visualises test process paths 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 paths 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.