jmeter提取结果中的多个值作为变量

在用jemter编写性能测试脚本过程中,往往有很多接口需要依赖上个接口的返回值,当只需要上个接口中的一个返回值时,其实很方便处理。相对难一些的是依赖上个接口返回值是多个的情况,此时用两种方法获取接口返回值中多个变量的值。
场景描述:现在有一个接口返回值如下,后续接口中,需要用到counterCodecounterName两个字段在这里插入图片描述

json提取器提取多个结果值

在jmeter中添加json提取器,在json提取器中变量名称中填写多个变量值,json表达式同样填写多个表达式,且json表达式和变量值一一对应,中间用分号隔开,特别注意的是在json提取器中的Default Values中的值需要填写,变量值是几个,Default Values就需要写几个默认值,同样用分号隔开,内容自己根据实际情况来定。
在这里插入图片描述
上面的提取方式有个问题,在用*号的时候,配合下面的0,表示的是提取结果中的随机一个,这样一来就会出现counterCodecounterName不是同一条数据返回来的,为了解决这个问题,可以添加前置处理器用户参数,在这里定义变量,然后再json提取器中使用变量即可解决
在这里插入图片描述
处理之后,可以在json提取器中引用变量
在这里插入图片描述
至此,json提取器提取多个变量值成功完成

正则表达式提取多个变量

同样对上述接口返回值,用正则表达式提取器就可以写成如下
在这里插入图片描述
其中
引用名称:表示的是整个正则表达式提取的值存放的变量,不管是多少个,只需要写一个变量
正则表达式:填写表达式,需要提取的值用括号括起来,里面照抄就行
模板:表示提取的值中的第几个,$1$表示提取的值中的第一个,提取完的结果是
在这里插入图片描述
在后续接口中引用时只需要使用变量counter_g1counter_g2即可,counter_g2表示提取的变量值有几个,本例中提取的值有2个,所以值为2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值