正则表达式提取器--jmeter将上一个请求的结果作为下一个请求的入参
Posted dujingtesting
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式提取器--jmeter将上一个请求的结果作为下一个请求的入参相关的知识,希望对你有一定的参考价值。
接口测试时需要将不同的接口串联起来,如将登录接口的出参UserStatusToken作为获取客户列表这个接口的入参,这样才能识别你是否是合法的用户。
1.创建一个线程组
选中测试计划--》右键--》添加--》Threads(Users)-->线程组
2.创建一个获取凭证的请求
在刚刚创建的线程组上右键--》添加--》Sampler--》HTTP请求
3.创建后置处理器
选中刚才添加的HTTP请求--》右键--》添加--》后置处理器--》正则表达式提取器
后置处理器是当这个请求返回后要做的事情,可以使用正则表达式提取器将需要的内容提取出来
4.正则表达式提取器配置
引用名称:userStatusToken 是下个请求将要引用到的变量名
正则表达式:.*"userStatusToken":"(.+?)".* 小括号()表示提取,也就是说对于你想要提取的内容要用它括起来
模板:$1$ 模板是使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从1开始匹配,依次类推。这里只有一个,所以使用$1$即可。
匹配数字表示如何取值。0代表随机取值,1代表全部取值。这里只有一个,填1即可。
缺省值表示参数没有取到的话,默认给它的值。一般不填。
这个请求返回的数据如下:
{"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}
我们现在要获取的是上面这个json字符串中tokenId的值,即 bf1017bc1bb495ae31764b306a3422885f5 。
5.添加下一个请求
在这个请求中,我们要将上面的Tokenid作为参数一并发送
同上2,添加一个请求:线程组右键--》添加--》Sampler--》HTTP请求
6.添加查看结果树
选中刚刚添加的HTTP请求--》右键--》监听器--》查看结果树
7.执行后,即可通过“查看结果树”查询
以上是关于正则表达式提取器--jmeter将上一个请求的结果作为下一个请求的入参的主要内容,如果未能解决你的问题,请参考以下文章