• Jmeter正则提取list中相同key的value和出现的次数


    list中如何计算某个key出现的次数以及通过正则关联参数化呢?

    首先要通过正则提取出现key的value

    举例:

    jmeter的正则提取配置如下:

    配置一个后置处理器Debug PostProcessor查看结果:

    如图:name_23为厦门:校验结果:

    说明:name_g1和name_1在于模板里配置了几个!!!!!

    如果模板只有一个$1$(1个组)、$1$,$2$(2个组) 那就说明例子为1个组!!!

    如图:一个组下name_23_g1 和name_23值是相同的

    那如何计算在json字符串出现的次数呢?

    举例:由于上面例子涉及具体公司商业信息,就随便写了 一个返回json串来说明

    {"ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1","ip":"1.1.1.1,"ip":"1.1.1.1","ip":"1.1.1.1,"ip":"1.1.1.1","ip":"1.1.1.1,"ip":"1.1.1.1","ip":"1.1.1.1,"ip":"1.1.1.1","ip":"1.1.1.1}
    

    在请求上创建一个正则表达式提取器,把响应信息全部提取到变量中如下面的截图

    可以匹配文档中任何一个位置。
    s 空白符
    S 非空白符
    [sS]任意字符
    [sS]* 0个到任意多个字符
    [sS]*? 0个字符,匹配任何字符前的位置。

    然后创建一个beanshll前置处理器:脚本如下

    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    ip = vars.get("ip");
    subs = ""ip"";
    Pattern pattern = Pattern.compile(subs);  
    Matcher matcher = pattern.matcher(ip);  
    int count=0;  
    while(matcher.find()){  
        count++;  
    }  
    System.out.println(count);
    

     执行Jmeter,控制台就打印出数值了

    打印的数值为 18

  • 相关阅读:
    HDU1575--Tr A(矩阵快速幂)
    HDU 2147--HDU 2147(博弈)--我可能做了假题。。。
    新年第一发--HDU1848--Fibonacci again and again(SG函数)
    【转】你真的会二分查找吗?
    windows与ubuntu双系统的安装
    bestcoder#9--1001--Lotus and Characters
    PC端的混合应用通讯问题
    JS构造函数详解
    JS的prototype的共享机制分析
    使用a标签直接下载图片
  • 原文地址:https://www.cnblogs.com/nzg-noway/p/6554005.html
Copyright © 2020-2023  润新知