jmeter正则表达式提取多个数据/一组数据时,应该怎么做——debug sampler的使用

背景:今天有个接口需要借助前面接口产生的一组ids数据,来作为入参使用,但是之前都是提取单个接口,所以到底怎么提取接口,遇到了很大的问题,按照多方查取资料都没有成功,最终在一个不相关帖子的最后一句话被点醒,所以做了这个记录,供有相同问题的小伙伴查阅。

首先说一下虽然失败但扩充了知识面的解题思路:

方案一:

1、采用foreach控制器,以图循环将需要的id拿出来放在正则表达式中,它的位置在这里:

 

2、执行后发现,这个控制器是将每个id提取出来,作为入参跑一遍,达不到我想要的作为一组数据传入的期望。这个办法行不通。

正确方案:

 在提取的正则表达式后面加上这个控制器,位置如下图:

这个控制器我理解就是会抓取在这个控制器之上的所有正则表达式提取值,然后将这些值的名称提出来依次放到作为入参的数组中即可,是不是so easy!

下面这次工作的图片展示,直观一些:

1、这个图片是正则表达式的编写,特别注意,匹配数字为-1,这样会取出所有的数组:

 2、这个图片就是debug sampler抓取到的正则表达式的值,这些都是本次得到的东西。然后将这些名称放入需要作为入参接口的正确位置就可以了~

3、这张图是入参写法,当然具体格式看开发规定:

这么简单的问题折腾了两个小时。。。希望我的记录能帮助更多人,o(╥﹏╥)o

原文地址:https://www.cnblogs.com/fish-101/p/11019599.html