一、测试目标

我这主要为了入门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里的日志打印;