Jmeter工具核心知识点
Jmeter核心参数化
目标
学习掌握Jmeter中常用参数化方式
为什么要参数化?
需求新增10条数据
学院-新增
1) 请求方法:POST
2) 请求地址:http://127.0.0.1:8000/api/departments/
3) 请求JOSN报文:
4) 调用传入的json串如下(可新增多条,之间用,隔开):
{
"data": [
{
"dep_id": "T01",
"dep_name": "Test学院",
"master_name": "Test-Master",
"slogan": "Here is Slogan"
}
]
}
问题:
1. 键所对应的值都是写死的,只能手动更改
2. 无法解决新增大数量(1000条)的问题
什么是参数化?
概念:根据需求动态获取数据并进行赋值的过程
在Jmeter中参数化常用方式:
CSV Data Set Config
用户参数
用户定义的变量
函数
CSV Data Set Config(数据集配置)
概念:一种从外部读取数据功能的组件
通过这个组件可以动态获取并设置数据,实现类似批量添加操作(执行一次,将多条数据插入到数据库)
实施方案分析
1. 基于测试计划->线程组
2. 基于线程组->配置元件->CSV Data Set Config
3. 基于线程组->Sampler->HTTP请求
4. 基于测试计划->配置元件->HTTP信息头管理器
5. 基于测试计划->监听器->察看结果树
组件要点分析
1. 线程组(对线程进行管理):循环次数10,不是线程数。
2. CSV Data Set Config 读取变量配置
3. HTTP请求:Body Data填写(JSON报文) 方法(POST)
4. 参数化引用格式:${参数名} 如:${dep_id}
5. HTTP信息头管理器:Content-Type:application/json;charset=utf-8
CSV Data Set Config 参数配置图
1. Filename:文件路径+文件名+后缀名 如:d:/a.txt;(图中红框用的是相对当前.jmx文件的相对路径)
2. File Encoding:文件编译字符编码,一般设置utf-8;若是txt就是gbk编码
3. Vaiable Names:读取参数后保存的变量名称;
4. Delimiter:如文件中使用的是逗号分隔,则填写逗号;如使用的是TAB,则填写 ;
HTTP信息头管理器 参数配置图
作用
告诉服务器请求的数据格式
1. Content-Type:指定请求信息格式-类型名称
2. application/json:指定请求信息为-JSON格式
3. charset=utf-8:字符编码
实现思想
实现流程
Jmeter组件:线程组实现高级
Set Up 线程组 : 最先执行的线程组
加载程序主体执行所需的资源
Tear Down 线程组 : 最后执行的线程组
程序正式关闭之前,可以将数据保存进内存
每个线程执行前后,都要先执行Set Up线程组,最后执行Tear Down线程组