JMeter3.0版本无法正常使用正则表达式提取器,这里用的3.2版本进行以下操作。
注:线程组下的某些组件被红框框起来了,不用太过关注,那是由于操作时,存在一些失误,没有特殊意义。
1.配置好如下组件:
这里用天气预报API来做演示,URL:http://mobile.weather.com.cn/data/sk/101010100.html?
2.在设置正则表达式之前,先运行脚本,从结果树中找出目标参数,在依此确定表达式的左右边界。
如下图:
3.这里,我想要取“北京”这个作为参数,表达式如下:
4.运行结果如下图:
5.这里可以将参数放在Debug Sampler后面,作为一个名称:
6.也可以将正则表达式设置为提取多个参数:
正则表达式设置如下:
Debug Sampler名称设置:
结果:
7.正则表达式中特殊字符需要用\来转译,对多个匹配到的值,取第n个,则设置匹配数字为(n),0为随机,-1为所有。如下图:
如果正则表达式只取一个数(即表达式中只有一个()),只能用$1$,如果中间数字不为1的话,则变量(good_id)取不到数。
8.$1$$2$$3$……的用法:
通过以上两张图片已经说明了模板的使用规则及方法。