Jmeter接口测试(六)关联&正则匹配

问题思考

  接口测试过程中经常需要接口之间关联调用,比如获取上一个接口的返回值,作为另一个接口的请求参数,那么该如何从处理呢?

  这里需要使用 Jmeter 的正则表达式提取器,通过对响应的数据来提取指定的数据。

操作案例

  从请求 get请求 的响应数据中匹配username的值,然后创建请求 get-name 来引用 username 的值作为请求参数。

  设置步骤: 

    选中请求——添加——后置处理器——正则表达式提取器,将提取器名称改为 提取username 

    根据 get请求 的响应,提取返回值中的 username 的配置如下:

正则表达式配置表


  • 引用名称:请求要引用的变量名称,如填写 username,则可用${username}引用它。
  • 正则表达式:匹配需要的内容。
  • 模板:用$num$引用起来,如果在正则表达式中有多个匹配数据,num 表示匹配到的第几个值给变量。如:

    $1$表示匹配到的第 1 个值存储在变量中。

    匹配数字:0 代表随机取值,1 代表全部取值,

    缺省值:如果参数没有取得到值,那默认给一个值让它取。

  案例中正则表达式说明

  • () 括起来的部分就是要提取的。
  • . 匹配任何字符串。
  • 一次或多次。
  • ? 非贪婪匹配,在找到第一个匹配项后停止。

   相关资料:正则表达式教程

 

  新建一个请求 get-name,在新的请求中将 get请求 返回的数据作为参数传递,上一篇说了变量引用使用 ${变量名} 的格式,关联同样如此,如下图所示:

  运行之后,查看 get-name 请求的内容是否正确,新的请求的参数为上一个请求的返回值。

  

原文地址:https://www.cnblogs.com/hancel/p/10240659.html