Jmeter接口测试7-Jmeter处理接口存在上下游数据依赖关系的情况

一、写在前面的话:

在我们平常的接口测试中,大部分的接口都是需要鉴权,只有通过鉴权(OAuth、‌Token、‌Session和‌Cookie等几种),才可以确保只有合法的用户才能访问系统接口。这种上一个接口返回的数据作为下一个接口的请求参数,在使用Jmeter做接口测试或压测时,我们首先要登录(获取到token),然后带着token去进行下一个接口访问。

二、场景一:同线程组内接口之间的值传递:

1.用户登录

2.正则提取器,获取登录token

引用名称:存储匹配结果的变量名称,可以是一个值也可以是一组值

正则表达式:匹配的正则表达式,正则表达式里面可以有多个正则

模板:正则表达式提取器类型,样式为:$n$,模板可自由组合,拼接组成新的字符串内容。

模板为:$0$,则为整个表达式匹配到的内容;

模板为:$1$,则对应正则表达式中的第一个小括号内()匹配的内容;

模板为:$2$,则对应正则表达式中的第二个小括号()匹配的内容;

模板为:$1$$2$,则把2个()所匹配的内容拼接起来,$1$aa$2$拼接两个变量的内容,并在中间加上aa

匹配数字:-1代表取全部数据,0代表随机取值,1代表取第1个数据,2代表取第2个数据

缺省值:找不到匹配时的值

3.使用提取到的token值

4.点击运行查看结果

总结:同线程组内不同接口之间变量值的传递,可以直接引用变量名使用即可实现值的传递。

三、场景二:跨线程组之间接口的值传递:

1.用户登录

2.正则提取器,获取登录token

3.后置处理器,设置成全局变量

使用后置处理器,将上一步正则提取器表达式提取出来的token值,设置成全局变量。可以使用如下语句:${__setProperty(token_123,${token},)};

4.跨线程组使用变量

上一步设置的全局变量名:token_123,直接使用:${__P(token_123)}

5.点击运行查看结果

总结:跨线程组之间,不同接口之间变量值的传递,需要将变量设置成全局变量后,引用全局变量名即可实现值的传递。

  • 14
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值