本文主要是介绍jmter深度学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、jmeter基本操作
请求地址:http://127.0.0.1:
8000/api/departments/
请求地址分解:
协议:http
服务器名称或ip:127.0.0.1
端口号:8000
路径:/api/departments/(端口号后面的部分)
测试计划-线程组-http请求
HTTP请求默认值:重对于复性的协议和服务器名称,端口等信息可通过添加HTTP请求默认值统一设置
添加路径:测试计划-添加-配置原件-HTTP请求默认值(习惯性测试计划的放在最上面)
信息头管理器:新增修改操作时,提交的数据是JSON格式的,需声明提交的数据的内容类型
添加路径:测试计划-添加-配置原件-HTTP信息头管理器;
点击添加-输入名称(如):Content-Type值:application/json ;Content-Encoding:utf-8
二、JMeter线程组的设置
1.JMeter并发执行和顺序执行
并发执行:JMeter默认是并发执行,执行没有顺序结果无序
顺序执行设置:点击测试计划-勾选独立运行每个线程组
2.JMeter两个特殊线程组
setUp线程组: 最先执行的线程组; tearDown线程组:最后执行的线程组
添加路径:测试计划-添加-线程(用户)-setUp线程组/tearDown线程组
3.JMeter线程组常用属性
线程数:模拟多少个用户使用,写100就是100个用户
循环次数:比如写3,代表100个人每人执行3遍 ;循环次数如果勾选了永远,若不手动停止,程序会一直执行下去(可能导致电脑死机)
调度器:勾选后选择循环执行进行限制;持续时间,比如写了5,那么只在5s之内循环执行;启动延迟,若写了2,则开始之前会等3s在执行
三、JMeter参数化的使用
四种方式实现参数化方式:
1.用户定义的变量 路径:测试计划-添加-配置原件-用户定义的变量
2.CSV 数据文件设置(使用最多,数据和脚本分离) 路径:测试计划-添加-配置原件-CSV 数据文件设置
2、用户参数 路径:HTTP请求-添加-前置处理器-用户参数
4、函数
用户定义的变量:
设置:想要用后面值里面的一大坨内容,只需要把前面的名称拿出来就可以了(相当于给后面的数据请了个代言人)使用 调用格式: ${变量名}四、JMeter直连数据库操作五、JMeter的断言
CSV数据文件设置:
1、使用CSV文件存储测试数据(准备批量数据);找个本地文件夹,新建记事本csv.txt文件;书写内容:一行代表一条数据,各个字段间用英文逗号分隔;保存时另存为,保存类型要选择utf-8
2、编写被复用的学院新增脚本模板 (编写脚本) 注意:编码集使用UTF-8无BOM格式
3、关联脚本与数据(将文件数据导入脚本)
添加CSV 数据文件设置:测试计划-添加-配置原件-CSV 数据文件设置
文件名:导入编写好的.txt脚本文件
文件编码:utf-8
变量名称:设置变量名称,后面使用的时候调用,比如:dep_id(在消息体中使用时:${dep_id})
是否允许带引号:不用管
遇到文件结束符再次循环:false:参数数据只执行一次 true:一直循环执行
遇到文件结束符停止线程:false:不停止(配合再次循环使用) true:停止
注意:遇到文件结束符再次循环为false,遇到文件结束符停止线程为true不想循环时;要把线程组里面的循环次数勾选“永远”或者写上要执行的次数(也就是总共执行的数据条数,但数据比较多时不能确定有几条,直接勾选永远就可以了);否则就只能执行一条数据?
变量名称在请求体中调用;
用户参数:(不需要额外文件,直接在jmter里面添加数据)
实现步骤:
1)添加用户参数路径:HTTP请求-添加-前置处理器-用户参数
添加变量:填写字段的名称
添加用户:填写值;(通过添加用户,增加参数测试数据量)
2)设置线程组:比如上图模拟了3个用户,那么线程数就要填写3;有几个用户,线程组就要写几
3)请求体中变量替换:
函数
常见函数:
_counter计数器函数 TRUE(每个用户都有自己的计数器)FALSE(所有用户共用一个计数器)
_Random 随机数函数 参数1: 取值范围最小值(包含)参数2:取值范围最大值(包含)
_time 获取当前时间的函数 无参:获取的是距离1970/01/01 00:00:00的毫秒值
参数1:yyyyMM_dd HH:mm:ss 格式化成年\月_日 时:分:秒格式
_counter计数器函数应用场景:
当线程组设置成如下去运行时,没用函数设置之前,查看结果树处请求名字都一样;
结果显示:
若希望请求名称不一样,需进行如下设置;
- 通过函数助手生成函数表达式; 第3个框,选择false的话:指所有用户共用一个计数器
- 复制函数表达式,粘贴到HTTP请求名称后面
运行结果显示:函数助手选择每个用户有自己的计数器
函数助手处选择使用全量计数器
_Random 随机数函数应用场景:
应用:
结果显示:
_time 获取当前时间的函数应用场景:
函数助手-不用设置任何参数直接点击生成
应用:
显示结果:
函数助手设置系统时间:
应用:
结果显示:
四、JMeter直连数据库
这篇关于jmter深度学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!