zoukankan      html  css  js  c++  java
  • Jmeter在Http Rest接口中自动生成签名(Json格式请求参数)

    第一步: 签名的java类生成jar包,导入到jmeter的lib目录下(依赖的第三方包也要导入)

    第二步:编写jmeter脚本,这里使用BeanShell 进行签名串的生成,目录结构如下:

     

    BeanShell 脚本如下:

     1 import java.util.ArrayList;
     2 import java.util.Collections;
     3 import java.util.List;
     4 import java.util.HashMap;
     5 import java.util.Map;
     6 import org.apache.jmeter.config.Arguments;
     7 import com.unisound.ym.SignUtil;
     8 import com.alibaba.fastjson.*;
     9 import org.apache.jmeter.config.*;
    10 
    11 
    12 String accessKey = "${accessKey}";
    13 String secretKey = "${secretKey}";
    14 String timestamp = "${requestTime}";
    15 
    16 log.info("accessKey----->{}",accessKey);
    17 log.info("secretKey----->{}",secretKey);
    18 log.info("timestamp----->{}",timestamp);
    19 
    20 //获取请求的Body参数
    21 Arguments args = sampler.getArguments();
    22 //json格式请求:body只有一个key为空的参数值
    23 for(int i=0;i<args.getArgumentCount();i++){
    24     String key = args.getArgument(i).getName();
    25     String value = args.getArgument(i).getValue();
    26     log.info("requst body:key={},value={}",key,value);
    27 }
    28 String requestJson = args.getArgument(0).getValue();
    29 log.info("-------{}",requestJson);
    30 
    31 String ymMd5SignStr=SignUtil.md5Sign(requestJson,accessKey,secretKey,timestamp);
    32 log.info("signatureStr--->{}",ymMd5SignStr);
    33 vars.put("ymMd5SignStr",ymMd5SignStr);

    关键代码:如何获取request body中的json字符串(HttpRest请求,注意header是application/json)

    1 //获取请求的Body参数
    2 Arguments args = sampler.getArguments();
    3 //json格式请求:body只有一个key为空的参数值
    4 String requestJson = args.getArgument(0).getValue();

    很简单吧!!!!

     测试脚本放入linux,命令行启动压测!!!

  • 相关阅读:
    NER(HMM实现)
    embedding(keras,word2vec)
    Word2Vec
    nlp文本转化方式小结
    文本向量化(欧氏距离,哈夫曼距离,L1,L2,TF-IDF)
    文件读取与保存(nlp,json)
    python调用大漠插件教程05字库
    Linux重定向与管道
    Linux文件句柄数调整
    HDFS命令实现分析
  • 原文地址:https://www.cnblogs.com/huahua035/p/11892322.html
Copyright © 2011-2022 走看看