业务场景

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

流程任务是需要获取任务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,..}

判断任务是否审批成功。

JMETER 审批任务实战的更多相关文章

  1. Jmeter分布式测试实战

    一.Jmeter分布式测试基础 1.Jmeter分布式测试原因: 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对负载机的CPU和内存消耗比较大.所以当需要模拟数以万计的并 ...

  2. 第9期《jmeter接口自动化实战》零基础入门!

    2019年 第9期<jmeter接口自动化实战>课程,12月6号开学! 上课方式:QQ群视频在线教学 本期上课时间:12月6号-1月18号,每周五.周六晚上20:00-22:00 报名费: ...

  3. 转 5 jmeter性能测试小小的实战

    5 jmeter性能测试小小的实战   项目描述 被测网址:www.sogou.com指标:相应时间以及错误率场景:线程数 20.Ramp-Up Period(in seconds) 10.循环次数 ...

  4. 4.27-Postman和JMeter总结及实战描述

    一.数据格式 常用的请求方法有8种,但是最常用的有4-5种 1.GET 获取资源 2.POST 添加资源(对服务端已存在的资源也可以做修改和删除操作) 3.PUT 修改资源 4 .DELETE删除资源 ...

  5. 5 jmeter性能测试小小的实战

    项目描述 被测网址:www.sogou.com指标:相应时间以及错误率场景:线程数 20.Ramp-Up Period(in seconds) 10.循环次数 10 测试步骤 1.打开jmeter工具 ...

  6. Jmeter入门--性能测试实战

    测试需求:测试20个用户访问https://www.baidu.com在负载达到30QPS时的平均响应时间. QPS:QueryperSecond,每秒查询率.一台查询服务器每秒能够处理的查询次数.在 ...

  7. JMeter 性能测试进阶实战

    课程简介 本课程制作的主要目的是为了让大家快速上手 JMeter,期间穿插了大量主流项目中用到的技术,以及结合当今主流微服务技术提供了测试 Dubbo 接口.Java 工程技术具体实施方案,注重实践. ...

  8. 性能测试学习之路 (四)jmeter 脚本开发实战(JDBC &JMS &接口脚本 & 轻量级接口自动化测试框架)

    1.业务级脚本开发 登录脚本->思路:在线程组下新建两个HTTP请求,一个是完成访问登录页,一个是完成登录的数据提交.   步骤如下: 1) 访问登录页 2) 提交登录数据的HTTP PS:对于 ...

  9. Jmeter监控技术实战

    性能测试中监控的意义 为性能分析提供依据 监控方案 serverAgent jmeter的插件,监控颗粒度不高,界面简陋 服务器中启动 jmeter中添加插件 Nmon Grafana 优秀监控方案所 ...

随机推荐

  1. Linux的启动过程的分析

    Linux的启动过程 Linux系统从启动大哦提供服务的基本过程为:首先机器家电,然后通过MBR或者UEFI装载GRUB,再启动内核,再由内核启动服务,最后开始对外服务 CentOS7要经历四个主要阶 ...

  2. day47_9_6(前端之js)

    一.js发展. 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准.次年,ECMA发布262号 ...

  3. Xmind最新的安装与破解教程

    参考链接:https://www.jianshu.com/p/e1693dad4dde Tips: hosts文件的默认位置:C:\Windows\System32\drivers\etc

  4. 读取只包含标签的xml

    什么是XML XML是可扩展标记语言(Extensible Markup Language)的缩写,其中标记是关键部分.用户可以创建内容,然后使用限定标记标记它,从而使每个单词.短语或块成为可识别.可 ...

  5. lua 6 函数

    定义: function max(num1, num2) local result = 0 if (num1 > num2) then result = num1; else result = ...

  6. 剑指Offer-2.替换空格(C++/Java)

    题目: 请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 分析: 题意明确,就是将一个字符 ...

  7. Avalon的小故事 (1)

    我:这个游戏真没意思,我为什么要玩这种东西 A:你渡过了前期才能发现这个游戏的乐趣 我:那我为什么不换一个游戏玩呢?换一个开头就让人欲罢不能的游戏? B:你这是逃避!你个懦夫! 我:我连自己选择游戏的 ...

  8. MySQL实战45讲学习笔记:第三十一讲

    一.本节概览 今天我要和你讨论的是一个沉重的话题:误删数据. 在前面几篇文章中,我们介绍了 MySQL 的高可用架构.当然,传统的高可用架构是不能预防误删数据的,因为主库的一个 drop table ...

  9. QTreeWidgetItem清空子节点

    下面列出,xxbs遇到的注意点儿: 1. QTreeWidget::collapseAll(); //xxbs::先折叠所有根项. 如果某个根是展开的,先删除根的子项再折叠,展开的凸显状态角色无法清除 ...

  10. .NET Core 中间件之压缩、缓存

    前言 今天给大家介绍一下在 ASP.NET Core 日常开发中用的比较多的两个中间件,它们都是出自于微软的 ASP.NET 团队,他们分别是Microsoft.AspNetCore.Response ...