2.4 JMeter 参数化常用方式
2.4.1 用户定义的变量
应用场景:全局参数
添加方式: 测试计划->线程组->配置元件->用户定义的变量
场景样例:
请求:
https://www.baidu.com:443
要求:使用用户定义的变量配置被系统的协议、域名和端口
操作步骤:
1.添加线程组
2.添加用户定义的变量
3.添加HTTP请求
4.添加查看结果树
总结
配置:参数名+参数值
使用:在HTTP请求的取样器中引用定义的变量。 ${参数名}
用户定义的变量2
或者在直接在 测试计划 中配置用户定义的变量
2.4.2 用户参数
应用场景:可以针对不同的用户获取不同的参数值(不能针对同一个用户循环取不同的值)
添加方式:测试计划->线程组->前置处理器->用户参数
场景样例:
请求:
https://www.baidu.com
要求:第一次请求附带参数: name=“张三”&age=28;
第二次请求附带参数: name=“李四”&age=30
操作步骤:
1.添加线程组
2.添加用户参数
3.添加HTTP请求
4.添加查看结果树
总结
参数:添加变量
参数值:添加用户-针对每个用户配置不同的参数值
使用:在HTTP请求的取样器中引用定义的变量。${参数名}
2.4.3 CSV数据文件设置 CSV Data Set Config
应用场景:针对每个用户每次循环取不同的值
添加方式:测试计划->线程组->配置元件->CSV数据文件设置
场景样例:
请求:
https://www.baidu.com
要求:循环3次,每次请求时附带参数username,password,code的值不相同
操作步骤:
1.定义CSV数据文件
2.添加线程组
3.添加csv数据文件设置
4.添加HTTP请求
5.添加查看结果树
编写CSV数据文件(.csv后缀) data.csv
多个参数写为多列,其中用英文逗号分隔
多组参数值,则使用多行来设置
配置:
. 文件名:填写CSV文件的路径。建议使用相对路径
. 文件编码:UTF-8
. 变量名称:从CSV数据文件中读取的数据需要保存的变量名,有多个变量时用逗号分隔
. 是否忽略首行: 是否从CSV数据文件第一行开始读取
. 分隔符: 要求与CSV数据文件中多列的分隔符一致
. 遇到文件结束符是否在次循环:默认TRUE
. 遇到文件结束符是否停止线程:当前一个参数为FALSE,改参数有效,一般设置为TRUE
同一个用户循环3次
2.4.4 函数(_counter)
应用场景:当需要参数化的数据只有唯一性要求,但对具体的参数无明确要求时,建议使用函数方式 (不需要提前准备数据,jmeter自动添加计数的方式来完成参数化)
计数函数,一般做执行次数统计使用;
位置:工具条 函数助手 工具按钮
(JMeter5.3 及以后的版本jmeter函数助手生成的字符在置灰无法复制,其实新版的的jmeter点“生成”按钮时 jmeter已经自动复制了,ctrl+v直接粘贴到需要的位置即可)
counter:
- TRUE:每个用户使用独立的计数器
- FALSE: 所有用户使用全局的计数器
引用:在取样器中使用${__counter(TRUE,)}来引用对应的值