Jmeter 将上一个请求的结果作为下一个请求的参数

在进行接口测试的时候,很多时候需要将上一个请求的结果作为下一个请求的参数带入其中,比如说登录后的token。
jmeter中,有两种方法可以实现此功能:

  • 正则表达式提取器
  • json path 提取器

针对返回格式为json的,推荐使用json path 提取器。

 

  首先新建一个线程组,然后分别添加两个http request sample

这里看到第一个request 用于获取token,第二获取用户列表request 便用到了第一个request 返回的token。
这里将token放在请求头里,所以需要添加一个http header manager sample 。

 由于后面的请求都需要使用token进行访问,所以将请求头放在后续请求的前面,这样就不需要针对每个请求都添加一个http header manager sample了,这里可以参考元件作用域

右击需要进行提取的请求添加json path 提取器

 

 

 

 

name of created variables:此处填写变量名,即后面需要使用此参数地方时候所填写的值
json path expressions:填写需要提取的json值的表达式json表达式语法参考:https://github.com/json-path/JsonPath

引用:${变量名}

二、  提参采样器添加正则表达式提取器

 

 

  • 引用名称(name of created variable):是下个请求将要引用到的变量名
  • 正则表达式(regularexpression):是提取你想要内容的正则表达式,小括号()表示提取,也就是说对于你想要提取的内容需要用它括起来
  • 模板(template):是使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从 1 开始匹配,依次类推。这里只有一个,所以填写 $1$ 即可;
  • 匹配数字(match No):表示如何取值。0 代表随机取值,1 代表全部取值。这里只有一个,填 1 即可;
  • 缺省(default value):值表示参数没有取到值的话,默认给它的值。一般不填。

引用:${变量名}

 

 

 

 

 

 

 

 

 

posted on 2022-08-09 14:19  yanmay  阅读(581)  评论(0编辑  收藏  举报

导航