Jmeter控制器与定时器

一、逻辑控制器

操作步骤:

  1. 添加线程组

  2. 用户定义的变量

  3. 添加if 控制器(使用 jexl3 表达式),判断name是否等于baidu ,勾选Interpret Condition as Variable Expression?

如果等于baidu,走if下面的http请求"HTTP请求-baidu",如果等于itcast,走if下面的http请求"HTTP请求-itcast"

二、循环控制器

位置:测试计划->线程组->右键添加逻辑控制器->循环控制器

步骤:

  1. 添加线程组
  2. 添加循环控制器-设置循环次数
  3. 添加HTTP请求
  4. 添加查看结果树

三、ForEach 控制器

作用: 一般和用户自定义变量或者正则表达式提取器一起使用,读取返回结果中一系列相关的变量值

该控制器下的取样器都会被执行一次或多次,每次读取不同的变量值

位置:测试计划->线程组->右键添加逻辑控制器->ForEach控制器

1) 与用户定义的变量配合使用(案例1):

  1. 有一组关键字[hello,python,test],使用用户定义的变量存储
  2. 要依次取出关键字,并在百度搜索,例如: 百度安全验证

步骤:

  1. 添加线程组
  2. 添加用户定义的变量
  1. 添加ForEach 控制器
  1. 添加http请求-百度
  1. 添加查看结果树

2)与正则表达式提取器配合使用(案例2):

  1. 访问传智播客首页 传智教育【官网】-好口碑IT职业教育,好口碑IT培训机构,一样的教育,不一样的品质传智教育("传智播客"全新升级为"传智教育")专注IT培训,开设多种IT培训课程,提供java培训、鸿蒙培训、前端开发培训、鸿蒙开发培训、嵌入式培训、嵌入式开发培训、大数据培训、人工智能培训、python培训、web前端培训、软件测试培训、ui设计培训、移动开发培训、新媒体运营培训、产品经理培训等IT培训服务,是好口碑的IT培训机构。https://www.itcast.cn/,获取首页中的地址信息,并全部保存下来
  2. 依次取出地址关键字,并在百度搜索,例如:https://www.baidu.com/s?wd=地址

操作步骤:

  1. 添加线程组
  2. 添加HTTP请求1-itcast
  3. 在http请求1下面,添加正则表达式提取器,提取出所有地址信息
  4. 添加ForEach控制器
  5. 添加HTTP请求2-百度
  6. 添加查看结果树

四、定时器

1)同步定时器

阻塞线程(累积一定的请求),当在规定的时间内达到一定的线程数量,这些线程会在同一个时间点一起释放,瞬间产生很大的压力。

添加定时器-Synchronizing Timer

参数介绍:

--模拟用户的数量: 指同时释放的线程数数量

若设置为0,等于设置为线程组中的线程数量(注意:一定要确保设置的值不大于它所在线程组中设置的线程数)

--超过时间:即超过xx毫秒后同时释放指定的线程数

若设置为0,该定时器将会等待线程数达到了设置的线程数才释放,若没有达到设置的线程数会一直死等

如果大于0,那么如果超过设置的最大等待时间后还没有达到设置的线程数,timer将不再等待,释放已到达的线程,默认为0

执行顺序:先执行同步定时器,每秒集满40个后,再释放给线程组。再集满40个,再释放给线程组。

2)常数吞吐量定时器

案例:

2个用户针对(服务器的QPS要求:20QPS(20次/s)的频率访问百度首页,持续一段时间,统计运行情况

3)固定定时器

案例:

IHRM系统登录错误3次后,锁定1分钟,等待1分钟后重新输入正确的用户名密码登录成功

请求方法:POST

请求URL:http://ihrm-test.itheima.net/api/sys/login

请求头:Content-Type: application/json;charset=UTF-8

请求体:{"mobile":"13800000002","password":"123456"}

步骤:

添加线程组

添加HTTP请求1 - 错误1次

添加HTTP请求2 - 错误2次

添加HTTP请求3 - 错误3次

添加HTTP请求4 - 正确用户名密码

在HTTP请求4下,添加固定定时器

添加查看结果树

添加http信息头管理器

相关推荐
文人sec1 天前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
CesareCheung3 天前
JMeter分布式压力测试
分布式·jmeter·压力测试
测试界清流3 天前
jmeter使用技巧
jmeter
春时似衿里3 天前
jmeter配置数据库连接步骤
数据库·jmeter
新知图书3 天前
JMeter的安装部署
jmeter
程序员杰哥3 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例
乐神嘎嘎嘎3 天前
Jmeter测试
jmeter
卓码软件测评3 天前
第三方软件测试机构【性能测试工具用LoadRunner还是JMeter?】
java·功能测试·测试工具·jmeter·性能优化
BatyTao4 天前
Jmeter执行数据库操作
数据库·jmeter
二宝哥4 天前
性能测试工具Jmeter之java.net.BindException: Address already in use
jmeter