一、测试目标
我这主要为了入门activiti,因为以前项目用workflow做过简单的二分叉处理(若结果false怎么处理,若true怎么处理),但我用的时候已经创建好了没实际参与,故而此处想用activiti来感受下这种流程;
二、目标流程和说明
我的测试流程是:学生提交了一个请假申请单,然后老师审批不通过,打回给学生,学生修改内容后再次提交,老师审批通过或到魁梧的夕阳那,主任已阅知悉,然后流程结束;
三、项目实现清单
名称
文件位置
作用
项目/src/resource/
用来画流程建立流程节点关系
项目/src/resource/
初始化activiti时会生成20多张表,这个文件说明这些表创建在哪个数据,如何登陆等
可随意放,但必须实现ExecutionListener接口,但为了规范建议建个listener包用来存放
这个用来绑定到【teacher节点】上用来监听,我以为审批过程测试中必不可少,其实没多大用;
可随意放,但必须实现ExecutionListener接口,但为了规范建议建个listener包用来存放
这个用来绑定到【gateway节点】上用来监听,我以为审批过程测试中必不可少,其实没多大用;
项目/src/…/controller
这个用来模拟你提交申请,老师审批通过等操作的接口调用
四、测试情况 3.1 加载流程
3.2 学生【点开】请假申请单—->启动流程
请求后的效果:数据表act_ru_task原本为空, 现在出现一条commit的数据,代表走到commit节点;
3.3 学生填写请假单后【提交】
提交请求后的效果:数据表数据由commit的变为teacher的了,代表走到teacher节点;
3.4 老师【审批不通过】
审批不同过api请求的效果:数据表act_ru_task内容由teacher换成commit了;表示又回到commit节点;
3.5 学生修改内容后【再次提交】—-同3.3,具体不写了 3.6 老师【审批通过】
审批通过api请求效果:数据表act_ru_task内容由teacher换成zhuren了;表示到了主任节点;
3.7 主任知悉已阅
主任通过api提交已阅效果:数据表act_ru_task内容由zhuren 变为空;表示到了结束节点;
五、监听类展示—-我这用处不大
说明:一般大家都想知道【我当前在哪个节点】,【我下一个节点是啥】;怎么打印呢?
【我当前在哪个节点】:在controller里可以打印,上看上面的controller,;
【我下一个节点是啥】:看下面的listener里的日志打印;