• Jmeter BeanShell前置处理器、取样器、后置处理器


    前置处理器:BeanShell PreProcessor
    取样器 :BeanShell Sampler
    后置处理器:BeanShell PostProcessor1、前置

    import org.apache.jmeter.protocol.http.control.Cookie;
    import org.apache.jmeter.protocol.http.control.CookieManager;
    
    CookieManager manager = sampler.getCookieManager();
    String token = "8def35aa-22bb-4f22-85e3-b1c1c9d6f1a9";
    
    //定义Cookie对象,其中参数:cookie的名称, cookie值, cookie域, 路径, 安全 //注意域名的正确性,还想需配合HTTP Cookie管理器使用
    Cookie cookie = new Cookie("userToken",token,"10.162.16.5","/",false,0);
    manager.add(cookie);
    
    2、取样器
    
    vars.put("name","shuzhifu");
    vars.get("name");
    //调用jmeter内置log对象,日志会打印到jmeter.log中
    log.info("shuzf");
    log.info("isEnc:"+vars.get("name"));
    
    //打印到控制台
    print("shuzf");
    print(vars.get("name"));
    System.out.println(vars.get("name"));
    
    //返回
    return ("shuzf");
    return vars.get("name");
    
    3、后置
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    
    prev.setDataEncoding("UTF-8"); //处理乱码
    
    //获取请求结果
    String data=prev.getResponseDataAsString();
    //请求结果构造成JSONObject对象
    JSONObject json_data = JSON.parseObject(data);
    
    //获取请求结果json某个值
    String code = json_data.getString("code");

    Jmeter中包括多种BeanShell,用法差不多,只是作用的地方不同。
    定时器:  BeanShell Timer
    前置处理器:BeanShell PreProcessor,提前处理请求参数,如:加密解密等
    采样器:  BeanShell Sampler
    后置处理器:BeanShell PostProcessor,在请求后对返回结果进行处理
    断言:   BeanShell断言,验证返回结果的正确性
    监听器:  BeanShell Listener

  • 相关阅读:
    jar命令打jar包
    kafka的一些参数
    fastdfs-nginx-module-master的一些奇怪的特点
    nginx 禁止恶意域名解析
    tcpdump抓包vrrp
    gitlab提交代码
    [Data]Segment Tree
    [Data]FHQ treap
    [Data]带修改的主席树[树状数组套主席树]
    [Data]可持久化线段树-主席树
  • 原文地址:https://www.cnblogs.com/shuzf/p/11165277.html
Copyright © 2020-2023  润新知