cancel
Showing results for 
Search instead for 
Did you mean: 

Running business processes from an integration test

0 Kudos

Version: hybris-multichannel-suite-4.7.0

The goal is to write an integration-test that test a business process that is started by the de.hybris.platform.processengine.businessProcessService - but the process engine doesn't seem to be active in the junit tenant.

The process is started from one of our own beans. The test is constructed whit the following flow way as a ServicelayerTransactionalTest running whit the admin user

userService.setCurrentUser(userService.getAdminUser())

  1. Construct the input model for the bean

  2. Call the beans method to start the process

  3. Busy waiting until the process stops

  4. Verifying the result of the process

The result is the step 3 keep looping, no logging from the process engine, and no update of the process state.

Based on this i got the following questions:

  1. Is it possible to start the process engine with in the junit tenant?

  2. Where is the limitation of the junit tenant documented? (it doesn't seem to listen fore http request either, e.g. web pages and embedded solr server.)

0 Kudos

A debug sessing shows that the TaskService is running, it have no effect on the process to restart the TaskService - all thought more threads are running.

Former Member
0 Kudos

Hi, Peter! Do you have any progress in testing business processes?

0 Kudos

No, and no answer from Hybris either ;-(

Accepted Solutions (0)

Answers (3)

Answers (3)

0 Kudos

Yes, a ServicelayerTransactionalTest cannot st new transaction. Using a ServicelayerTest you has to either setup data each time or rollback after the test.

Former Member
0 Kudos

Try using a ServicelayerTest instead - that should work.

0 Kudos

It would be nice with a clarification from Hybris on this one - is it possible in newer versions?