jmeter常用功能补充介绍
笔者之前整理过一篇jmeter基本使用的介绍,本篇主要是针对一些没有提到,但在实际工作场景中会用到功能点进行补充,之前的一篇文章详见《jmeter基本使用及基于jmeter的数据验证》。
一、断言
JSON断言
实际工作中为了更准确的定位返回的数据是否正确,针对json格式的返回数据,会使用JSON断言,此时会用到JSONPATH的定位方式。
以下是json断言界面的一些配置点解释
- Assert JSON Path exists:用于断言的JSON元素的路径(填写JSONPath)
- Additionally assert value:是否额外验证根据JSONPath提取的值
不勾选:验证JSONPath能否在JSON文档中找到路径;
勾选:验证根据JSONPath提取值是否预期。
- Match as regular expression 预期值是否可以使用正则表达式。
不勾选,预期值不能使用正则表达式表示;
勾选,预期值可以使用正则表达式表示。
- Expected Value:预期值。
- Expect null 若验证提取的值为null,则勾选此项。 这里有两个地方需要额外注意:
a.验证null值,还是需要勾选“Additionally assert value”,否则验证的是J SONPath能否找到路径;
b.预期值不填表示空字符,与null不等价。
- Invert assertion(will fail if above conditions met) 若勾选,表示对断言结果取反。
注意: 除了null外,还有一种特殊的值,就是空数组,预期值不能不填,需要设置为:[] 其中[]表示空数组。
JSONPATH的定位规则以及具体案例如下:
$ :根元素
. or []:子元素
* : 通配符,代表所有的元素或对象
[] :下标运算,可以获取到数值元素的指定下标元素。
二、函数助手
通过函数助手对话框可以get一些比较方便的功能,包括生成随机数,随机日期,系统时间等等,调用方式如下
指定区间生成随机整数,并储备到ramdom_num对象中,可以使用${ramdom_num}进行调用。
指定时间范围生成随机的日期,默认格式是yyyy-MM-dd
指定字符串获取2位字符拼成新的字符串,并储备到str中
还可以读取csv文件
三、Jmeter插件使用
使用Jmeter插件可以扩展Jmeter的功能,http://jmeter-plugins.org/downloads/all
使用方法:下载插件管理器对应的jar包,然后放在Jmeter的lib/ext目录下,打开Jmeter,选项-插件管理器,勾选对应的插件,等待下载完成,点击apply,等待重启Jmeter,即可使用。
常用插件:
PerfMon :服务端性能实时监控插件
Random CSV Data Set Config:随机读取CSV数据插件
3 Basic Graph:实时tps和响应时间的插件
此外,jmeter还支持访问数据库,使用beanshell的一些组件,但实际工作没有用到,此处就不再详细列举,等用到之后再做补充。