jemeter中json提取器

1、A接口中的单个参数提取,之后用于其他接口

  a. 在需要提取字段的接口上右击添加----后置处理器-----json extractor

  

   b. 填写json提取器的数据

  

    1.名称:随便填写,方便自己记录信息,必传

    2.apply to: 应用范围,使用默认的即可(仅对当前元件生效)

    3.variable names: 后续接口使用该字段时的使用名,必传(后续使用规则为:${userid})

     4. json path expression:json path 表达式,用来提取某个值,必传(按照json的结构表达式填写对应的数据)

      4.1 绝对路径(查看结果树----格式修改为json path tester----输入自己的表达式-----点击右侧test可直接检查)

      

      4.2 相对路径(查看结果树----格式修改为json path tester----输入自己的表达式-----点击右侧test可直接检查)

      

    5. match no (0 for random):0:随机默认;-1所有数值;1第一个数值;非必传

      5.1 json表达式结果是确定的单个数值:填写1即可,表达式会正常返回获取的数值

      5.2 json表达式结果是多个数值:

        0随机拿取其中一个;

        

        1是拿取第一个数据;

         

        -1用逗号分隔返回搜索到的所有数据;

        

    6. compute concatenation.var:如果匹配到多个值,则将它们都连接起来,不同值之间用,分割开

    7. default values: 默认数据,当没有获取到具体数据的时候会使用改数据兜底

  c. 后续接口单独使用该数据

  

  

2、A接口中多个参数提取,之后用于其他接口

  a. 在接口上右击添加----后置处理器-----json extractor(如上图,不再赘述)

  b. 填写json提取器的数据(如上图数据含义,不再赘述)

    1.填写数据的4个地方都必须保持数据数量一致

    2.都以分号隔开数据

  

  c. 后续接口只用单个数据

  

  d. 后续接口2个数据共同使用

  

 

3、接口中提取满足特定条件的表达式

  本文参考的实例json表达式如下:

  

  a. 提取data的所有startconfig下的所有id

   $.data.startConfigData.actionLabelConfigList[*].id 

   

  b. 提取actionLabelConfigList下面第2组数据的id和gravityEnabled(相对路径和绝对路径都可以)

    $.data.startConfigData.actionLabelConfigList[1].['id','gravityEnabled']

    $..actionLabelConfigList[1].['id','gravityEnabled']

    

    

 

posted on 2024-05-07 10:46  小菜鸟920  阅读(150)  评论(0编辑  收藏  举报