zoukankan      html  css  js  c++  java
  • JMeter 将上一个请求的结果作为下一个请求的参数——使用正则提取器(转载)

    在接口测试和压力测试过程中,经常会将几个流程串联起来才能测试。如:我要进行获取用户信息接口测试,我就要先登录成功后,才能获取用户信息。所以,我就要首先要登录,获得我的登录凭证(tokenId或ticket等),之后获取用户信息时候需要带上这个凭证。才能识别你是否是合法的用户,才可以获取成功。具体的步骤如下:
    1)、创建一个线程组
    2)、创建添加一个登录请求,获取凭证的请求
    3)、创建后置处理器
       JMeter GUI 视图中右击该采样器打开右键菜单 -> 添加 -> 后置处理器 -> 正则表达式提取器,打开"正则表达式提取器"会话页面并编辑其内容如下:
      后置处理器是当这个请求返回后要做得事情,我这里是要从返回的内容中将我们要的tokenId获取出来。这里使用“正则表达式提取器”,用正则表达式,将我们要的内容获取出来。
    4)、正则表达式提取器配置
    • 引用名称是下个请求将要引用到的变量名
    • 正则表达式是提取你想要内容的正则表达式,小括号()表示提取,也就是说对于你想要提取的内容需要用它括起来
    • 模板是使用提取到的第几个值。因为可能有多个值匹配,所以要使用模板。从 1 开始匹配,依次类推。这里只有一个,所以填写 $1$ 即可;
    • 匹配数字表示如何取值。0 代表随机取值,1 代表全部取值。这里只有一个,填 1 即可;
    • 缺省值表示参数没有取到值的话,默认给它的值。一般不填。

    这个请求返回的数据如下:

    {"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}
      我们现在要获取的是上面这个json字符串中tokenId的值,即   bf1017bc1bb495ae31764b306a3422885f5  。
    5)、添加下一个请求
      在这个请求中,我们要将上面的tokenId作为一个参数一并发送。
      同上2)、添加一个http请求(线程租右键——》添加——》Sampler——》HTTP请求)
     
    6)、添加查看结果树
      
    7)、执行后,即可通过”查看结果树“查询
     
    8.OK,可以获取成功!
     
     
  • 相关阅读:
    sql server获取指定库下的所有表名
    sql根据字符将一行拆成多行
    刷题416. Partition Equal Subset Sum
    刷题394. Decode String
    刷题347. Top K Frequent Elements
    刷题309. Best Time to Buy and Sell Stock with Cooldown
    刷题338. Counting Bits
    刷题337. House Robber III
    刷题312. Burst Balloons
    刷题621. Task Scheduler
  • 原文地址:https://www.cnblogs.com/aliy-pan/p/6148542.html
Copyright © 2011-2022 走看看