流程仿真功能介绍¶
本文是**参考产品**能力说明,不是本期 OBPM 实现规格。
本期实现见 [[流程仿真功能设计]](后端已落地;设计器 UI 未做)。
下文独立菜单、测试用例、测试报告、自动执行、独立「流程测试」权限 不在本期。
一、功能定位¶
流程仿真(又称"流程仿真测试")是 BPM 流程引擎中的核心质量保障功能,位于**流程建模完成后、正式发布前**,用于在不产生真实业务数据的前提下,完整模拟一条流程的流转过程,验证设计是否符合预期。
在流程全生命周期(需求调研 → 分析设计 → 搭建 → 测试仿真 → 发布 → 监控分析 → 优化运维)中,它是连接"设计"与"上线"的关键关口。
二、核心作用¶
| 作用 | 说明 |
|---|---|
| 验证流转逻辑 | 检查节点属性、操作者设置、出口条件、分支路由是否正确 |
| 模拟真实身份 | 支持以指定发起人身份运行,无需切换账号 |
| 校验表单规则 | 可校验必填字段、字段联动、节点前后附加动作 |
| 提前发现问题 | 在建模阶段即可获知流程运转的详细情况和数据,便于修正 |
| 用例复用 | 测试完成后可保存为测试用例,后续版本变更时回归执行 |
三、功能入口¶
提供两个入口:
- 工作流设计页:右上角「流程测试」按钮——设计完成后即时测试
- 独立菜单:工作流程 → 「流程仿真测试」子菜单——集中管理所有流程的测试
四、操作流程¶
选择流程版本 + 发起人身份
↓
配置测试选项(是否校验必填 / 是否触发附加操作)
↓
手动执行 或 自动执行(支持提交、退回等操作)
↓
图形化流程图实时查看流转节点
↓
生成测试报告,对比预期与实际结果
↓
保存为测试用例(可选,用于后续回归)
测试结果三种状态:
- 通过:流程结束且结果符合预期
- 不通过:流程结束但结果与预期不符
- 无法结束:流程因提交失败等原因未完成
测试用例:
- 生成用例:测试完成后可将本次测试保存为测试用例,便于后续复用
- 执行用例:在「测试用例」菜单中直接执行,对比预期与实际结果,适用于流程版本变更后的回归验证
仿真测试步骤-1: 开始测试¶
流程详情,点击流程测试按钮(需要添加)
仿真测试步骤-2: 选择流程发起人¶
本期实现:弹窗先选**企业域**,再按姓名或账号搜索该域用户作为发起人(不再写死「所有人」)。
![[Pasted image 20260912102405.png]]
勾选这个触发节点/出口附加操作,把这个开关打开,保持字段赋值和动作流被勾选中,如下图:(这一步非常重要,这一步非常重要,这一步非常重要,我在测试的时候没有勾选这个,结果二开的action代码死活不执行,) ![[Pasted image 20260912102805.png]]
仿真测试步骤-3: 开始测试¶
开始测试就跳转到表单提交界面 ![[Pasted image 20260912102915.png]]
仿真测试步骤-4: 提交动作(进行测试)¶
![[Pasted image 20260912103204.png]]
五、注意事项¶
- 权限控制:需在权限管理中心为对应角色分配「流程测试」权限
- 自由流程不支持:自由流程(由发起人自由选择审批人)无法使用仿真测试
- 测试数据管理:测试产生的数据可查看或删除,系统保留操作痕迹,不影响正式业务数据
- 版本关联:测试时需明确选择流程版本,不同版本的流转逻辑可能不同
六、价值总结¶
流程仿真的核心价值在于**"上线前试跑"**——把流程设计中的逻辑错误、条件遗漏、操作者配置不当等问题,在正式发布前暴露并修正,避免因流程设计缺陷导致真实业务审批卡死、走错分支或审批人错误,从而降低流程上线后的运维成本和业务风险。