Модульный тестовый пример для служб, связанных с camunda

#java #unit-testing #camunda

#java #модульное тестирование #camunda

Вопрос:

 public variableInstance getVariableInstance(String proccessInstanceId, ProcessEngine processEngine) {
  RuntimeService runtimeService
    = processEngine.getRuntimeService();
  return runtimeService.createVariableInstanceQuery().processInstanceIdIn(processInstanceId).variableName(BiConstant.ID).singleResult();
}
  

Нужна помощь в написании модульного тестового примера этого фрагмента кода.Новое в модульном тестировании.

Ответ №1:

Пожалуйста, ознакомьтесь с этими ссылками на документацию и примерами:

https://github.com/camunda/camunda-bpm-assert/blob/master/docs/User_Guide_BPMN.md особенно. https://github.com/camunda/camunda-bpm-assert/blob/master/docs/User_Guide_BPMN.md#helpers-variables

https://docs.camunda.org/manual/7.14/user-guide/testing/#camunda-assertions

https://github.com/camunda-consulting/code/blob/master/snippets/rest-service-task-spring/src/test/java/org/camunda/test/RestCallExampleTest.java

 ProcessInstance pi = runtimeService()
        .startProcessInstanceByKey("NewProductApprovalProcess", withVariables(
                "productDepartment", "Seafood",
                "rejected", false));
assertThat(pi)
        .isWaitingAt("CompleteOrUpdateProductDetailsTask")
        .task().hasCandidateGroup("Seafood").isNotAssigned();

taskService().claim(task().getId(), "Gladstone");
assertThat(task()).isAssignedTo("Gladstone");

complete(task(), withVariables("rejected", false));
assertThat(pi).variables().containsEntry("assignee","Gladstone");