美文网首页
jmeter(十八)beanshell之prop、vars、md

jmeter(十八)beanshell之prop、vars、md

作者: Sandra_liu | 来源:发表于2020-07-21 19:25 被阅读0次

    一、vars:当前线程内使用

    1、新增用户定义变量


    用户变量.png

    2、新增BeanShell PreProcessor

    import org.apache.commons.codec.digest.DigestUtils;
    /*vars.get(String key) //获取变量值*/
    String phone = vars.get("phone");
    String timestamp = vars.get("timestamp");
    String countryCode = vars.get("countryCode");
    log.info("************************************************************************************************************");
    
    /*md5加密*/
    /*加密字符串是按字母顺序进行排序的*/
    String str = "countryCode"+countryCode+"phone"+phone+"timestamp"+timestamp;
    String secret = "3c21561aea0925f1a1667660b2ac3fd7";
    String sign = DigestUtils.md5Hex(secret+str+secret); 
    /*vars.put(String key, String value) //存储value到变量key*/
    vars.put("sign",sign);
    
    /*log.info(""),括号为变量*/
    log.info(phone);
    log.info("************************************************************************************************************");
    
    /*加密后,转换成小写*/
    /*vars.put("sign",sign.toLowerCase());*/
    

    二、props:跨线程使用

    线程A内

    响应数据示例:

    {
        "code": 200,
        "data": [
            {
                "cover": "http:\/\/package.xiaohutu.com\/xiaohutu\/xueling\/cidian.jpg",
                "bookSize": "904.0MB",
                "bookIntro": "",
                "releaseDate": "2017-01-20",
                "packageUrl": "http:\/\/package.xiaohutu.com\/xiaohutu\/source\/Growing_upV7.bnf",
                "progress": "",
                "bookName": "Growing Up 英汉彩图辞典八万字",
                "bookId": 9674,
                "status": 0
            }
        ],
        "message": "获取成功"
    }
    

    1、使用JSON path extractor 获取book_id;


    image.png

    2、新增BeanShell PostProcessor;
    将变量改成jmeter的内置属性

    import org.apache.commons.codec.digest.DigestUtils;
    String b = vars.get("book_id");
    props.put("newbook_id", b);
    log.info("********************")
    

    线程B内
    3、新增BeanShell Sampler;
    直接调用jmeter的内置属性变量

    ${__P(newbook_id)}
    

    相关文章

      网友评论

          本文标题:jmeter(十八)beanshell之prop、vars、md

          本文链接:https://www.haomeiwen.com/subject/xaywkktx.html