JMeter通过正则进行关联测试
在进行接口测试的时候,前一个接口返回的动态数据作为后续请求的参数,这时候需要用到关联技术,今天来说一说JMeter如何通过正则表达式进行关联测试。
首先,找到相应请求(第一次引起动态数据响应对应的请求),通过察看结果树的Text制图,根据响应关键数据比如“稿件标题”查找。
添加正则表达式提取器:在“取样器”节点下添加“后置处理器”-->"正则表达式提取器"
填写正则表达式规则:
1、表示该正则表达式的名称,可以随意其填写,见名知意。
2、apply to: 应用范围(返回内容的断言范围),选择第二项
Main sample and sub-samples:作用于父节点取样器及对应子节点取样器
Main sample only:仅作用于父节点取样器
Sub-samples only:仅作用于子节点取样器
JMeter Variable:作用于jmeter变量(输入框内可输入jmeter的变量名称)
3、要检查的响应字段:选择主体
4、引用名称:即变量名,将正则表达式提取的数据存在该变量中。
5、正则表达式:匹配想要得到的数据
选取数据的左右边界,将想要匹配的数据放在小括号()内,根据数据规则在小括号内书写正则表达式,每个小括号就是一组数据。可以匹配多组
6、模板:
$1$:表示匹配第一组数据,即(.*)里的数据
$2$:表示匹配第二组数据,即(\d{6})里的数据
$1$$2$:表示匹配第一组和第二组的数据,(.*)和(\d{6})里的数据组合
另外,组与组之间可以添加任意多个字符,$1$_$2$:表示匹配出的第一组数据与第二组数据之间添加一个下划线”_“。
7、匹配的数字:如果匹配到的数据有多个,选取想要的数据所在位置
-1:表示选取所有数据
0:随机选取一个数据
1:选取匹配的第一个数据据
2:选取匹配到的第二个数据
......
8、缺省值:当没有匹配到数据时,添加一个默认值,大多数情况下不用填写。
最后,title就可以作为后续请求的变量使用了。