关联是jmeter中比较重要的一个点,在测试过程中有些数据是经常发生变化的,要获取这些数据,就需要使用关联,Jmeter可以通过“后置处理器”中的“正则表达式提取器”来处理关联。。
正则表达式提取器
1、在取样器下点击【添加】--【后置处理器】--正则表达式提取器
2、以随机查询城市天气为例,定义变量名称为city
(1)引用名称:下一个请求要引用的参数名称,如填写city,则可用${city}引用它。
(2)正则表达式:([0-9]*)、(.+?)
():括起来的部分就是要提取的。
[0-9]:0-9间的任意数字。
*:匹配0个以上
.:匹配任何字符串。
+:一次或多次。
?:不要太贪婪,在找到第一个匹配项后停止。
(3)模板:用$$引用起来,如果在正则表达式中有多个正则表达式,则可以是$2$$3$等等,表示解析到的第几个值给city,如:$1$表示解析到的第1个值。
(4)匹配数字:0代表随机取值,1代表全部取值,-1代表取所有值。
(5)缺省值:如果参数没有取到值,那默认给一个值让它取。
3、提取到的值作为变量传入
4、可以添加Debug PostProcessor(调试后处理程序)查看正则表达式的取值
注意:(.+?)和(.*?)的区别
(.+?):匹配一个及以上,不能取到空值;
(.*?):匹配0个及以上,可以取到空值。