前几天在Q群里看到群友发的最近10年性能测试工具使用率的统计,最近的2018年,jmeter+loadrunner占了93%的使用率,说明这两个是主流,其中,jmeter的使用率逐年提高,如今已经超过了loadrunner,占了51%。html
除了作性能,jmeter也能够作自动化测试,好比jmeter + ant + jenkins的自动化测试框架(参考:http://www.javashuo.com/article/p-ovnjucvp-bw.html),jmeter还能够作接口功能测试,因此,jmeter应该是每一个测试工程师的必备技能。前端
这里,咱们着重讲解jmeter的关联,什么是关联?将服务器提供动态变化的值存放在变量中,当须要使用该变量时,自动从服务器响应的信息中获取该值,并在后面使用的过程当中进行替换。(也多是前端页面动态生成的值)正则表达式
jmeter关联的方式比较多,这里介绍5种方式,总有一种让你喜欢。 若是想了解loadrunner关联的,能够参考LoadRunner【第五篇】关联:http://www.javashuo.com/article/p-zrkqbruo-dy.htmlshell
这里,咱们用dummy取样器来模拟服务器的返回,经过关联获取name的值,而后百度搜索这个name的值,这就咱们就简单模拟了请求间的依赖关系。apache
添加dummy取样器json
设置返回内容服务器
搜索的关键字是上一个请求返回的name值框架
打印获取到的name的值工具
调试的取样器性能
正则.*?,参考:http://www.javashuo.com/article/p-ffizodkn-eh.html
关联获取到的值
百度搜索结果
$表示接口的返回值,若是取字典key的value,用点号,若是是取列表的某个值,用索引
关联获取到的值
百度搜索结果(略)
和方法二相似,$表示接口的返回值,若是取字典key的value,用点号,若是是取列表的某个值,用索引
关联获取到的值
百度搜索结果(略)
这个和loadrunner中的关联很像,经过左右边界来取值,参考:http://www.javashuo.com/article/p-zrkqbruo-dy.html
关联获取到的值
百度搜索结果(略)
写beanshell脚本,解析json字符串。
这里要用到fastjson,jar包下载地址:https://mvnrepository.com/artifact/com.alibaba/fastjson
下载后,把jar包放到D:\apache-jmeter-5.1.1\lib\ext下,而后重启jmeter便可
而后重启jmeter便可
fastjson解析json字符串
百度搜索结果(略)
至此,5种方式都准确的获取到了须要关联的值。