代码改变世界

jmeter forEach循环获取response参数值进行接口请求

2020-05-17 12:21  清风软件测试开发  阅读(1630)  评论(0编辑  收藏  举报

jmeter forEach循环获取response参数值进行接口请求

 

注意:

一,ForEach控制器

输入变量前缀:输入正则表达式变量的引用名称即可

Start index for loop(exclusive) 指定目标值的开始索引(不包含填写值),默认为0,也就是取第一个为开始

End index for loop(exclusive) 指定目标值的结束索引(包含填写值),默认最大索引值,也就是去最后一个结束

如果要遍历分组中的全部遍历,Start index for loop(exclusive),End index for loop(exclusive) 都默认为空即可

Add “_” before number? 默认勾选状态,根据填写值来决定是否勾选,如下图,如果输入变量前缀填写引用名称_则可以不勾选,否则必须勾选。

 

 二,正则表达式提取器

 

 

模板:

对应正则表达式提取器类型,样式为:$n$。
$n$ 表示这里有多个正则表达式,提取第n个正则表达式匹配的一个或多个内容
若模板为:$0$,则为整个表达式匹配到的内容,就是包括小括号内跟小括号外的内容,
若模板为:$1$,则对应正则表达式中的第一个(.*?)所匹配的内容
若模板为:$2$,则对应正则表达式中的第二个(.*?)所匹配的内容
若模板为$1$$2$,则把2个(.*?)所匹配的内容拼接起来

匹配数字:

正则表达式匹配数据的最终结果可以看做一个数组,匹配数字即可看做是数组的第几个元素。
当为 0 时,随机返回匹配的数据。
当为 1 时,表示返回匹配结果数组的第一个元素
当为负数(-1,-2,-100都可以)时,表示返回全部元素,并且同时会返回一个元素总数的变量
在引用时:通过${变量名_1}的方式来取第1个匹配的内容,${变量名_2}来取第2个匹配的内容

缺省值:

匹配失败时的默认值。通常用于后续的逻辑判断,建议使用一些特殊含义的,比如0,NULL,ERROR等。