正则表达式提取器+ForEach控制器--提取所有值作为下一个请求的传参

 

 前言:jmeter测试接口时会遇到一些场景,需要从前一个请求的响应数据中提取数据作为下一个请求的入参,使用正则表达式提取器提取所有的值后要怎么作为参数别下一个请求引用呢?具体操作结果如下

 

场景:查看某个用户的联系人信息,然后删除所有的联系人

 

 

1. 登录系统后新建一个获取联系人列表的请求,查看到联系人列表中有多个联系人ID

 

2. 然后添加正则表达式提取器提起联系人的ID,匹配数字填写‘-1’,代表取所有值

 

 

 

3. 添加ForEach控制器

参数:
Input Variable Prefix:输入变量前缀,本例中为:contactsId
Output variable name:输出变量名称,提供给其它控件引用
Start index for loop(exclusive):循环开始的索引(默认从0开始,如果填写是2,实际是从2+1个开始执行)
End index for loop(inclusive):循环结束的索引(默认从0开始,如果填写是2,实际是从2+1个开始执行) ;填写${XXId_matchNr},XX表示正则表达式提取的匹配出的参数的个数
Add””before number:输入变量名称中是否使用“”进行间隔。

 

4. 再添加‘删除联系人’的请求,参数值引用ForEach控制器中输出的新变量名

 

5. 执行结果如下,成功了

 

 

另外,foreach控制器还可以和用户自定义变量一起使用,如下图

设置三个变量

 

 

 

执行一下,看结果

 

 

posted @ 2018-04-20 16:12  琉璃星眸  阅读(322)  评论(0编辑  收藏  举报