zoukankan      html  css  js  c++  java
  • JMETER 审批任务实战

    业务场景

    我们需要对流程任务进行审批,这个和流程发起是不一样的,因为在流程发起时,只需要用户登录后,指定固定的流程方案和数据就可以发起流程了。

    流程任务是需要获取任务ID再做任务审批的。

    实现思路

    1.准备数据

      1.用户登录

      2.用户发起流程,产生出待办任务。 

    2.用户登录

    3.根据用户查询出他所有的待办任务。

    4.循环他的待办任务对流程进行审批。

    实现脚本

      1.配置数据源

      数据源用来配置查询数据库,这里比较关键的是 连接池变量名称。

    2.用户变量

     这个主要是配置需要测试接口的ip,端口和上下文。

     3.查询需要审批的人员

     这个配置的是查出审批的用户出来,把帐号和用户ID放到 userid 和 account 为前缀的变量中,在上下文中 用户id和帐号是使用如下方式存放的

    userid_1,account_1

    userid_2,account_2

    ....

     4.设置用户计数器

    这个计算器的作用是,遍历用户时需要一个计数器,通过该计数器获取用户ID和帐号数据。

     

    5.用户登录

     这里帐号使用了参数化,帐号通过 ${__V(account_${idx})} 获取,应为帐号的数据是 使用 account_1,account_2这种方式获取的。

    6.查询用户的代办任务

    每个登录用户需要查询自己的待办任务,然后循环批量执行。

     用户ID 使用 ${__V(userid_${idx})} 方式获取。

    这里我们根据当前登录用户ID,查询节点1产生的待办任务。

    输入参数配置的是 用户ID变量,使用 prepared select statement 方式查询。

    查询的结果使用 taskId 为前缀的 集合进行保存。

    在上下文中变量的数据是 :

    taskId_1

    taskId_2

    7.增加一个循环控制器

     这个控制器的作用是遍历用户的任务,遍历次数是查询的用户任务数。

    8.任务计数器

      这个计数器的作用是用户任务的索引。

    9.审批任务

     使用表达式获取任务ID ${__V(taskId_${taskIdx})}, 审批时尽量简单,只传入 taskId 和审批意见。

    10.使用JSON断言

    任务审批成功会返回 {"success":true,..} 

     判断任务是否审批成功。

  • 相关阅读:
    Map 中的EntrySet() ,Map的遍历
    Struts2拦截器原理
    基于 <tx> 和 <aop> 命名空间的声明式事务管理
    Spring AOP Example 文件下载:
    Struts2拦截器
    好多开发文档——官网打不开的福音
    threejs样例
    bootCDN,用了都说好
    react拷贝index.html很恶心之解决办法
    网络爬虫好
  • 原文地址:https://www.cnblogs.com/yg_zhang/p/11490890.html
Copyright © 2011-2022 走看看