java - 如何使用 Camunda 指定并行网关中的执行顺序?

标签 java testing integration-testing camunda

对于我的集成测试,我想指定执行并行网关的执行路径中的确切顺序。我不想同时但按顺序执行并行路径。 有什么方法可以用 Camunda 实现这一目标吗?

我已经尝试通过延迟模拟服务调用的响应来减慢一条路径,但由于并不总是使用模拟服务调用,因此该解决方案并不总是有效。

暂停一条路径的执行直到另一条路径的执行完成就足够了。

最佳答案

这是不可能的。在 camunda 引擎中,不能保证在并行网关上采用哪个序列流。

无论如何,在 camunda 引擎中并没有真正的并发性,因为每个流都是顺序执行的(流程实例是单线程的)。这意味着如果采用第一个流,它将执行直到到达保存点(等待状态)并提交事务。例如,这可以是用户任务或任何其他标有 asyncBefore 或 asyncAfter 的 Activity 。

到达此等待状态后,将执行其他序列流。

有关 camunda 交易的更多信息,请阅读有关 Transactions in processes 的文档

关于java - 如何使用 Camunda 指定并行网关中的执行顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50236201/

相关文章:

java - Autowired 在 Bean 类 Spring 中不起作用

python - 如何防止vscode/ms-python清除测试结果?

testing - 在 IntelliJ IDEA 中运行单独的 ScalaTest 测试方法

c# - 在起订量中传递谓词函数参数失败

azure - 与 Docker 集成测试 Azure 服务总线

java - 发票查询总是返回不超过 10 个结果

java - 如何使用文件观察器?

java - 什么时候会到达这个 catch block ?

testing - 如何模拟较低 CPU 处理器的机器以进行浏览器测试

c# - LINQ to SQL 无法创建数据库 [架构权限]