zoukankan      html  css  js  c++  java
  • jmx脚本编写第一天

      新公司要编写jmeter脚本,Java丢掉N久也不想捡起来的我第一时间寻找其他语言编写的方法,千辛万苦找到了jython,还没开心呢,写完登录和退出脚本问题就来了,jython已经停更多年,很多功能和现在并不接轨了,只能扭头乖乖捡起java。好在jmeter脚本需要的Java包主要只有两个,一个JSONArray一个JsonObject。为了加深印象顺带捡起丢了许久未更新的blog开始记随笔了,目标是一周内熟悉语法,能独立编写beanshell。

    基本获取jmeter响应参数都可以套用下面的模板

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    
    //获取上一个请求的返回值
    String json=prev.getResponseDataAsString();
    //将返回值转换为json
    JSONObject jso = JSON.parseObject(json);
    //获取data
    JSONObject data = jso.getJSONObject("data");
    //获取token
    //也可以写作String token = jso.getJSONObject("data").getString("token");
    String token = data.getString("token");
    
    log.info("token");
    //使用vars.put()方法储存变量token
    vars.put("token",token);
    

    在后面的其他接口中如何需要使用变量token,可以使用${token}来获取变量的值;

    变量储存好后,在需要断言的接口后面添加BeanShell断言,使用Failrue来标识断言失败,FailureMessage标示断言失败的原因,如:

    //使用vars.get()方法获取变量的值
    String token= vars.get("token");
     
    if(!message.equals("")) {
        Failure = true; 
        FailureMessage = "规则解析失败";
    }else{
        FailureMessage = "规则解析成功";
        }

      或者直接在需要断言的接口中进行断言操作

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    
    //获取上一个请求的返回值
    String json=prev.getResponseDataAsString();
    //将返回值转换为json
    JSONObject jso = JSON.parseObject(json);
    //获取data
    JSONObject data = jso.getJSONObject("data");
    //获取token
    //也可以写作String token = jso.getJSONObject("data").getString("token");
    String token = data.getString("token");
    
    log.info("token"); 
    if(!message.equals("")) {
        Failure = true; 
        FailureMessage = "规则解析失败";
    }else{
        FailureMessage = "规则解析成功";
        }

      

      

  • 相关阅读:
    go语言之goroute协程
    Vue中Computed和Watch的用法及区别
    php判断复选框是否被选中的方法
    基于workerman的实时推送
    织梦引入公共模板
    织梦快速建站首页模板
    golang解决中文乱码的方法
    Vue项目中使用可视化图表echarts
    解决for循环中异步请求顺序不一致的问题
    layui多图上传实现删除功能的方法
  • 原文地址:https://www.cnblogs.com/keima/p/11468374.html
Copyright © 2011-2022 走看看