首页 > 系统相关 >jmeter中beanshell-regex用法-prev.getTime()

jmeter中beanshell-regex用法-prev.getTime()

时间:2024-06-22 22:31:52浏览次数:26  
标签:regex prev String getTime Pattern userid token jmeter

jmeter-beanshellPostprocessor,
实现需求:判断响应时间大于10ms的响应,并记录想要的响应字段,比如流水号,注册的用户名密码等
代码如下:

import java.util.regex.Matcher;
import java.util.regex.Pattern;
//这里引入判断响应时间的代码,如判断响应时间超过10ms,则记录流水号

long responseTime = prev.getTime();

if (responseTime > 10) {
    String response = prev.getResponseDataAsString();
    // 定义正则表达式模式
    Pattern patternUserId = Pattern.compile("\"userid\":\"([^\"]+)\"");
    Pattern patternToken = Pattern.compile("\"token\":\"([^\"]+)\"");

    Matcher matcherUserId = patternUserId.matcher(response);
    Matcher matcherToken = patternToken.matcher(response);

    String userid = "";
    String token = "";

    if (matcherUserId.find()) {
        userid = matcherUserId.group(1);
    }

    if (matcherToken.find()) {
        token = matcherToken.group(1);
    }

    // 接下来进行判断和写入文件
    String code = "10000";  // 假设这里获取到的 code 为 10000

    if (code.equals("10000")) {
        File logFolder = new File("D:\\log");
        if (!logFolder.exists()) {
            logFolder.mkdirs();
        }
        try {
            BufferedWriter writer = new BufferedWriter(new FileWriter("D:\\log\\log.txt", true));
            writer.write(userid + "," + token + "\n");
            writer.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

标签:regex,prev,String,getTime,Pattern,userid,token,jmeter
From: https://www.cnblogs.com/yimouz-219/p/18262814

相关文章

  • Jmeter中http请求参数为文件类型的使用
    Jmeter中http请求参数为文件类型背景本人在使用jmeter中,一开始一直不知道怎么设置请求中参数是文件类型;因为之前使用的是postman,但postman中如果参数是文件类型,可以直接选择参数类型,切换到file就可以;可能是因为之前一直使用的postman,所以一换到jmeter就不会用。使用创建......
  • Jmeter 界面字体大小调整
    1.首先在bin目录下找到【jmeter.properties】文件,用记事本或Notepad++等文本工具打开配置文件,搜索【jsyntaxtextarea.font.size】找到对应行,去除注释符号#,修改数字大小。如302.bin目录下找到【jmeter.bat】文件,用记事本或Notepad++等文本工具打开配置文件增加如下代码,保持后重启......
  • 使用 Apache JMeter 调度器的详细指南
    前言ApacheJMeter是一个用于性能测试的开源工具,广泛用于模拟各种场景下的负载测试。调度器(Scheduler)是JMeter的一个重要功能,可以帮助测试人员在指定的时间段内执行测试计划。本指南将详细介绍如何配置和使用JMeter的调度器。启动JMeter在命令行中导航到JMeter的bin......
  • 使用 Apache JMeter Flexible File Writer 插件的详细指南
    简介ApacheJMeter是一个强大的开源工具,广泛用于性能测试和负载测试。为了更好地记录和分析测试结果,JMeter提供了多个监听器(Listener)来收集数据。FlexibleFileWriter是一个非常有用的插件,它允许用户以自定义格式将测试结果写入文件中。本指南将详细介绍如何安装、配置和使用......
  • 使用 Apache JMeter 事务控制器的详细指南
    简介ApacheJMeter是一个用于负载测试和性能测试的强大开源工具。逻辑控制器(LogicControllers)是JMeter的重要组成部分,帮助用户定义请求的执行逻辑。事务控制器(TransactionController)是一种常用的逻辑控制器,用于将多个请求组合在一起,并将它们作为一个单独的事务进行计时。本......
  • 使用 Apache JMeter 吞吐量控制器的详细指南
    简介ApacheJMeter是一个用于负载测试和性能测试的强大开源工具。逻辑控制器(LogicControllers)是JMeter的重要组成部分,帮助用户定义请求的执行逻辑。吞吐量控制器(ThroughputController)是其中一种,用于控制采样器执行的频率,以实现特定的吞吐量目标。本指南将详细介绍如何配置和......
  • JMeter 响应断言详解:提升测试精度的利器
    前言在性能测试和功能测试中,响应断言是验证系统响应是否符合预期的重要手段。ApacheJMeter提供了丰富的断言功能,帮助测试工程师确保测试请求的响应数据正确、可靠。本文将详细介绍JMeter中响应断言的类型、配置方法以及最佳实践。什么是响应断言?响应断言用于验证JMeter发......
  • 解决 JMeter 返回内容中文乱码问题的详细指南
    前言在使用ApacheJMeter进行性能测试时,处理中文字符可能会遇到乱码问题。这不仅影响测试结果的正确性,还会导致测试报告难以理解。本文将详细介绍如何解决JMeter返回内容中的中文乱码问题,从配置文件设置到编码转换,帮助测试工程师顺利进行性能测试。常见的中文乱码问题在JM......
  • JMETER 5.+ 内存不足或者修改堆内存方法
    一切答案其实官方的文档里:https://jmeter.apache.org/usermanual/get-started.html在bin目录下新建setenv.sh或者bat文件配置jvm参数,它的优先级高于jmeter脚本,覆盖该脚本参数。 Linux:可能需要设置一些环境变量来配置JMeter使用的JVM。这些变量可以直接在启动jmeter脚本的......
  • Jmeter分布式性能测试环境的搭建常见问题
     1.在负载机上安装jmeter,修改jmeter\bin\jmeter.properties配置:1)server.rmi.ssl.disable=false改server.rmi.ssl.disable=true,注释要去掉2)启动jmeter-server.bat2.在本地测试机修改jmeter.properties配置:1)在jmeter.properties中remote_hosts=127.0.0.1:1099,192.xxx......