常用方式:
1. 用户定义的变量
2.用户参数
3.CSV Data Set Config
4.函数
一、用户定义的变量
tips:当大量脚本中的参数值需要修改时,直接修改用户定义的变量中的值会更方便
添加方式:测试计划-->线程组-->配置元件-->用户定义的变量
1.1 应用场景
如:请求:http://www.baidu.com:80
要求:使用用户定义的变量配置被测系统的协议、域名和端口
1.2 操作步骤:方法一
(1)添加线程组
(2)添加用户定义的变量:线程组-->配置原件-->用户定义的变量
(3)添加HTTP请求,然后再引用添加的变量:${变量名}
(4)添加查看结果树
1.3 操作步骤:方法二
(1)添加线程组
(2)添加HTTP请求
(3)在“测试计划”里添加变量,然后在http请求里引用:${变量名}
(4)添加查看结果树
二、用户参数的参数化
添加方式:测试计划-->线程组-->前置处理器-->用户参数
2.1 应用场景:
请求:https://www.baidu.com
要求:第一次请求附带参数:name="张三"&age=28;第二次请求附带参数:name="李四"&age=36
2.2 操作步骤
(1)添加线程组
(2)添加用户参数:线程组-->添加-->前置处理器-->用户参数
配置:参数:添加变量
参数值:添加用户-->针对每个用户配置不同的参数值
(3)添加HTTP请求,引用定义的变量 :${变量名}
(4)添加查看结果树
缺点:在循环多次时,每个用户只能取固定的变量值。在注册/新增时,不适用,要用到CSV 方式
三、CSV数据文件设置(.csv为后缀)
添加方式:测试计划-->线程组-->配置元件-->CSV数据文件设置
3.1 场景:
请求:http://www/baidu.com
要求:循环3次,每次请求时附带参数username,password,code的值不相同
3.2 操作步骤
(1)定义CSV数据文件(类似于一个普通的文本文件格式,比JS、yaml要简单,但是解析的速度比较慢,新建一个txt文档,修改后缀为csv,用notepad打开,有几个变量就定义几列,每列用逗号或者空格分开,有几组值就定义几行
(2)添加线程组
(3)添加CSV数据文件设置:线程组-->添加-->配置元件-->CSV数据元件设置
--变量名称:JMeter先是读取CSV里面的数据,然后要新建一个变量名来存储这些变量,便于引用,CSV里有几个变量,就要设几个
--文件名:
绝对路径:D:\Install software\JMeter4.0\data.csv
相对路径:../data.csv (当需要多台测试机同时测试时)
--文件编码:UTF-8
--是否忽略首行:取决于CSV文件首行是变量名还是数据
--分隔符:要求与CSV数据文件中的分隔符一致
--遇到文件结束符再次循环:默认为True,数据已经取完了后,又继续从头开始循环
--遇到文件结束符停止线程:默认为False,和上面的是需要一起搭配使用
(4)添加HTTP请求
(5)添加查看结果树
优点:灵活,每次循环,每个用户 都能取到不同的值,可用于登录时
缺点:使用前都要先把数据定义好
四、函数(_counter)
含义:计数函数,一般做执行次数统计使用
位置:菜单-->选项-->函数助手对话框
counter:
值为TRUE:每个用户使用独立的计数器,都是从0开始
值为FALSE:所有用户使用全局的计数器,不会重复
引用:在取样器中使用${__counter(FALSE,)},${__counter(TRUE,)}
引用场景:当需要参数化的数据只有唯一性要求,但是具体的参数值无明确要求时,建议使用函数方式,如注册账号