本节的目的是逐步描述Activiti Core和Activiti Cloud发行版需要涵盖的场景。这些测试是自动化的,以确保在未来的版本中我们不会引入可能破坏这些场景的情景。
本文档被分成不同的部分,重点讨论本地和分布式环境执行的不同方面。这意味着测试应该涵盖执行和状态如何保存在执行过程中涉及的每个不同服务中。
这些场景还需要从消费者的角度定义发送的数据类型/有效负载和预期的输出(即试图通过可用api访问状态的输出)。
为了对什么在起作用,什么没有起作用有一个感性的看法,需要涵盖不同的方面:
- 本地和分布式
- 用户与管理api
- 安全策略的实施
- 基本、中等和高级/复杂场景
- 数据处理和持久性
- 性能(可以单独分析)
基于这些维度,我们将按照以下顺序覆盖不同的组合:
- 使用本地用户API的基本场景(ACTIVITI_USER角色API):
-
基本场景单独测试BPMN元素的执行。我们应该测试高兴路径和不高兴路径,以了解在执行过程中出现问题时将生成哪些错误。
-
流程信息
-
服务任务
-
用户任务
-
用户任务分配
-
设置网关
-
调用活动
-
设置信号
-
- 使用分布式用户api的基本场景
- 使用带有数据处理的本地用户api的基本场景
- 使用带有数据处理的分布式用户api的基本场景
- 使用本地管理api的基本场景
- 使用分布式管理api的基本场景
这些测试的代码可在此找到:
- Activiti核心一致性场景
- Activiti云一致性场景
这些场景用于锁定我们的发行版。这意味着Activiti依赖项和Activiti Cloud依赖项只有在这些舒适性测试为绿色时才会发布。