文章目录
- 1. 用户自定义变量
- 2. CSV Data Set Config
- 3. CSV键值对
- 4. counter计数器
- 5. 数据抽取变量
- 5.1 XML报文抽取
- 5.2 Json报文抽取
在做接口测试或性能测试中,参数化是常用的一种测试技巧,本质就是使用动态的数据替换固定的数据。参数化思想就是数据驱动,使得脚本业务逻辑和外部数据分开,脚本数据通过变量与外部数据对应,保证脚本的健壮性。简单介绍一下jmeter中常用的参数化方法:
1. 用户自定义变量
(1)Testplan->Thread Group->Config Element中添加User Defined Variables,如下图:
(2)在用户自定义变量中定义url、port、encoding,是为了后续在多个http request中不重复书写,防止因为手误导致脚本不通过。话不多说,上图。
(3)执行一下,说明参数化成功了。
2. CSV Data Set Config
(1) Test Plan 或Thread Group添加CSV Data Set Config。
(2)准备数据文件,以 .csv结尾的文件,数据之间的分隔符可用逗号,或者tab。在界面中定义数据变量名,如果用tab 键分隔数据,则Delimiter输入框输入:\t,如果数据以逗号分隔,则例如Delimiter输入框输入:,
(3)参数的引用
设置循环次数为3,在请求中设置参数。
csv数据参数化执行情况上图:
3. CSV键值对
(1)此功能需要插件jmeter-plugins-csvars-0.1.jar。此种方式为数据文件中定义变量名与变量值。
(2)在界面中配置好csv文件路径,请求中正确书写变量名,执行结果上图。
4. counter计数器
在接口测试时,如何保证数据的唯一性,可以使用counter计数器。
(1)Test Plan->Config Element-> Counter。
(2)请求中引用变量counter。
(3)在线程组中设置2个VU循环5次,查看结果树中counter值。
5. 数据抽取变量
业务工作流中常常是前面报文返回的结果中某一变量作为后面请求的参数,也就是常说的参数关联,这就使用到Jmeter的后置处理器post processor,介绍2种常用数据抽取方法,XML报文抽取和JSON报文抽取。
5.1 XML报文抽取
(1)使用Dummy sampler模拟返回XML报文。
(2)Dummy sampler->post processor->XPath Extractor
(3)在下一请求中使用变量year,并在结果树中查看。
5.2 Json报文抽取
(1) 使用Dummy sampler模拟返回JSON报文。
(2)Dummy sampler->post processor-> JSON Extractor
(3) 在下一请求中使用变量title,并在结果树中查看。
【注意事项】
Csv文件中参数化是一定要把参数名差异化,如果不小心参数名相同,那Jmeter只取变量名的最后一个参数值。