• 【测试工具】Jmeter常用beanshell


    1,jemter打印超过预期响应时间的耗时

    int time = prev.getTime(); //获取接口响应时间

    if(time > 3000){                 //判断如果响应时间大于3秒则输出相关内容

    FileWriter fstream = new  FileWriter("/home/PerfSpace/04project/errLog/TimeLong.txt",true);

    BufferedWriter out = new BufferedWriter(fstream);

    out.write("=================================开始===================================");        

    out.write(System.getProperty("line.separator"));        

    out.write("接口响应时间(ms):");

    out.write(prev.getTime().toString());        //将int类型响应时间转成string并输出

    out.write(System.getProperty("line.separator"));        

    out.write("请求头信息是:");

    out.write(prev.getRequestHeaders());     //(我测试的流水号在header里)输出响应头信息,正常可以输出流水号、响应报文、参数化的某个变量等,   

    out.write(System.getProperty("line.separator"));        

    out.write("=================================结束===================================");        

    out.write(System.getProperty("line.separator"));        

    out.close();

    fstream.close();        

    }

    2,jemter的beanshell断言,并打印报错信息

    String resp = prev.getResponseDataAsString();
    String code = prev.getResponseCode();
    String reqDate = prev.getSamplerData();
    String time="${__time(yyyy-MM-dd HH:mm:ss,)}";

    if ("200".equals(""+code) == false){  //判断响应是否包含200;也可以判断字符串:if((response.contains("\"bindStatus\":\"Y\""))) 
    Failure = true;
    String[] ss = resp.split("\n");
    FailureMessage = ss[0];
    FileWriter fstream = new FileWriter("/home/PerfSpace/03project/errLog/ATH文件下载Error.txt",true);   //打开要写入文件的路径和名称
    BufferedWriter out = new BufferedWriter(fstream); 
    out.write("===================================began================================");
    out.write("请求时间:"+vars.get("time"), "请求报文:"+reqDate);
    out.write(System.getProperty("line.separator"));       //换行符,避免内容打印到一行,不方便查看
    out.write("响应时间:"+vars.get("time"),"接口响应:"+FailureMessage);
    out.write(System.getProperty("line.separator"));
    out.write("===================================over================================");
    out.write(System.getProperty("line.separator"));
    out.close();
    fstream.close();
    }
    else {
    Failure = false;
    }

  • 相关阅读:
    List<T>范型的使用
    Vue2项目练手——通用后台管理项目第五节
    Web开发-基础知识扫盲
    Kubernetes(k8s)的Volume数据存储介绍和各种基本储存类型(EmptyDir、HostPath、NFS)的使用
    罗克韦尔AB PLC RSLogix5000中计数器指令使用方法介绍
    postgresql|数据库|序列Sequence的创建和管理
    Kafka关键原理
    蓝桥杯 枚举
    前端使用highlight.js代码高亮显示(服务端返回前端代码的字符串格式)
    前端本地存储方案-localForage-vue3中使用
  • 原文地址:https://blog.csdn.net/m0_49428126/article/details/127437442