• jmeter接口压力测试-(二)


    json提取器的应用:

    注意查看 JSON path expressions:
    $.data.data.[*].[?(@.status==3)].borrowId 筛选指定条件的数据

    JSON提取器页面的解释:

    名称:自己命名即可
    注释:自己命名即可
    Apply to:

    1. 名称:自行定义,就是节点的名称
    2. 注释:节点的注释,容易理解的解释
    3. Apply to:断言可以应用于主样本,子样本或者两者。默认断言是第二个,断言应用于主样本。
    • Main sample and sub-samples:主样本和子样本
    • Main sample only:仅主样本
    • Sub-samples only:仅子样本
    • JMeter Variable Name to use:JMeter使用变量名字,断言将应用于命名变量的内容
      Names of created variables:变量名称,比如:id,后续可以引用这个名称
      JSON Path Expressions:JSON元素的路径
      Match No. (0 for Random):0代表随机,就是JSON路径取出来的可能有多个值,0就是随机取一个,要取第一个,那么就填1即可。-1代表取所有
      Compute concatenation var:如果找到许多结果,插件将会使用’,’连接起来
      Default Values:默认值

    JSON提取器分析:

      1. 返回的数据必须的JSON格式,否则会解析失败。
      2. 他将JsonPath语法搜索指定的路径,找不到路径,则会失败。JSONPath - XPath for JSON 这个网址去学习JSON语法。
        举例:取code值
      3. 二、Json提取最后一组数据

        新建后的属性接口响应回来一般放在第一位或者最后一位,第一位取比较方便,如下图:

        1. 取第一个分类的id

        1. $.[0].children[0].children[0].id

        2. 那么取最后一个分类中的二级分类的id:

        $.[0].children[-1:].children[0].title

    $.data.recordList[*].code[0]----第一个code

    $.data.recordList[*].code[0]----倒数第二个code

    $.data.recordList[*].code[0,1]----前两个code

    注意:提取多个值,提取器的 Match No.(0 for Random)必须是-1

    工作中还会遇到需要按照条件取值的情况-----表达式:[?(expression)]

    $.data.recordList[*].code[?(@.test)]------提取code中包含test的记录

    $.data.recordList[*].code[?(@.voucher_time>‘2021-08-01’)]------提取reg_time字段大于2021-08-01的记录

    $.data.recordList[*].code[?(@.desc=~/.测试.?/i)]------提取desc字段中包含测试的记录

    $.data.recordList[*].code[?(@.sex)]------提取sex字段为0的记录

  • 相关阅读:
    91.移动零(力扣)
    基于阿里云 Serverless 快速部署 function 的极致体验
    基于Flask的招聘信息可视化系统
    i.MX8M Plus核心板、开发板编解码性能测试
    【渝偲】DSPE-PEG-Galactose;DSPE-PEG-半乳糖;磷脂聚乙二醇半乳糖 长循环脂质体
    wy的leetcode刷题记录_Day30_二叉树起点!
    文件操作安全之-文件解析原理篇
    【通过】华为OD机试真题46 - 最长的完全交替连续方波信号
    [前端]Preprocessor dependency "less" not found.
    图神经网络入门(理论篇)
  • 原文地址:https://blog.csdn.net/testManger/article/details/125990431