一,定义。
在本文中。
参数化:指对每次发起的请求,参数名称相同,参数值进行替换,如登录三次系统,每次用不同的用户名和密码。
关联:与系统交互过程中,系统返回的内容,需要在接下来的交互中用到,如防止csrf攻击而生成的token。
二,参数化。
参数化的方法有
方法一,使用函数助手。选项-->函数助手对话框。
在对话框的下拉列表中选择功能,如随机函数等,输入一些变量,点生成,即可生成引用表达式。在参数的值的地方用这个表达式便可达到参数化目的。
除了随机数,还有从文件读取值,得到当前线程号,得到当前机器号等函数可用。
方法二,从csv文件读取。
1.新建一个文本文件,里面保存要登录的用户名,密码,文件内容如下:
admin,123
manager,456
test,test
说明:这里用英文逗号为分隔符,也可以用其他为分隔符,在CSV Data Set Config中可以设置。
2.右键点击Jmeter中需要参数化的某个请求,选择添加——配置原件——CSV Data Set Config,会添加一个CSV Data Set Config,需要设置相关的一些内容,具体如下:
Filename:文件名,,指保存信息的文件目录,可以相对或者绝对路径(比如:D:/ceshi.Txt)
Variable Names:参数名称(如:有几个参数,在这里面就写几个参数名称,每个名称中间用分隔符分割,分隔符在下面的“Delimitet”中定义,为了和文件中的“,”对于,这里也用“,”分割每个参数名,(比如:use,password)
Delimitet:定义分隔符,这里定义某个分隔符,则在“Variable Names”用这里定义的分隔符分割参数。
Recycle on EOF:是否循环读入,因为CSV Data Set Config一次读入一行,分割后存入若干变量中交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入。
unique:这个功能需要另行扩展(扩展方式暂不知)。为实现每个线程取一个唯一的值进行参数化。

方法三,用户自定义变量
右击某个结点-->添加-->前置处理器-->用户参数,可以在里面添加参数,手动输入,然后在需要用到参数的地方引用即可。

三,关联。
关联的方法有:
方法一,从前一个请求中取,用正则表达式提取器。
具体方法,在需要获得数据的请求上右击添加一个后置处理器-->正则表达式提取器
引用名称:引用名称和引用的方法,不用多解释,和变量参数化差不多。
正则表达式:正则表达式中()括起来的部分就是要提取的。所以左右边界中出现的()要记得转义。
.代表任意字符,
*代表出现任意次。
?代表不要贪婪,在找到第一个匹配项后停止。
模板:用$$引用起来,代表从正则表达式结果引用的样式,其实结果是一组,而不是一个。$0$代表这一组结果的全部(包括左右边界值),$1$代表这一组结果的第1个,以此类推;
$1$$2$代表该正则表达式一组结果中的第1个和第2个,俩结果挨在一起中间没有间隔;
$3$,$4$代表该正则表达式一组结果中的第3个和第4个,俩结果间有一个逗号相连。
匹配数字:0代表正则表达式结果组中随机,1代表全部。
缺省值: 当引用不对时显示传递的信息,通畅写一个ERROR。

方法二,用xpath从前一个请求中取。这种形式比较适合于返回为xml片段的情况。
在需要获得数据的请求上右击添加一个后置处理器-->xPath Extractor。
引用名称即下一个请求要引用的参数名称,如填写body,则可用${body}引用它。
XPath query,即xpath的表达式,要符合xpath的语法。
浙公网安备 33010602011771号