jmeter调用自己打的jar包

2021-05-29 23:05

阅读:642

标签:val   encoding   public   ext   unit   digest   代码   png   get   

1 打包jar包

1.1  创建 javaweb  maven 项目

通过md5加密签名得到 sign 值,前台接口信息头需要此参数

技术图片

技术图片

 

技术图片

技术图片

技术图片

pom文件


  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4.0.0com.hjh
  JmeterSignUtilHjh
  1.0-SNAPSHOTjarJmeterSignUtilHjh Maven Webapphttp://www.example.comUTF-81.81.8junit
      junit
      4.11testcom.alibaba
      fastjson
      1.2.75org.apache.shiro
      shiro-all
      1.7.1pomjavax.servlet
      javax.servlet-api
      3.1.0JmeterSignUtilHjh
          maven-clean-plugin
          3.1.0
          maven-resources-plugin
          3.0.2
          maven-compiler-plugin
          3.8.0
          maven-surefire-plugin
          2.22.1
          maven-war-plugin
          3.2.2
          maven-install-plugin
          2.5.2
          maven-deploy-plugin
          2.8.2
新建一个java文件夹

技术图片

 

 技术图片

工具类代码

package com.util;

import org.apache.shiro.crypto.hash.Md5Hash;

import java.util.*;

public class JmeterSignUtilHjh {

    public static void main(String[] args) {
        Map signMap = new HashMap();
        signMap.put("parameter1" , "str1");
        signMap.put("parameter2" , "str2");
        System.out.println("str:" + JmeterSignUtilHjh.getSignStr(signMap,"str3"));
    }

    public static String getSignStr(Map  paramValues , String secret) {
        try {
            StringBuilder sb = new StringBuilder();
            List paramNames = new ArrayList();
            paramNames.addAll(paramValues.keySet());
            Collections.sort(paramNames);
            for (String paramName : paramNames) {
                sb.append(paramName).append(paramValues.get(paramName));
            }
            sb.append(secret);
            return MD5Digest(sb.toString());
        } catch (Exception e) {
            throw new RuntimeException("加密签名计算异常!" , e);
        }
    }

    /**
     * md5工具类
     */
    private static String MD5Digest(String src){
        return new Md5Hash(src).toString();
    }

}

 1.2 打包写好的代码

技术图片

 

 技术图片

 把jar包放到\apache-jmeter-5.2.1\lib\ext 里面,重启jmeter

2 jmeter 引入jar包

技术图片

 

技术图片

 

import com.util.JmeterSignUtilHjh;


Map  signMap = new HashMap ();

comp = vars.get("compname");
limit = vars.get("limit");
es=vars.get("es");

signMap.put("companyName" , comp);
signMap.put("limit" , limit);
signMap.put("useES" , es);
//sign=SignUtils.getSignStr(signMap,null);
sign=JmeterSignUtilHjh.getSignStr(signMap,"fe716cbb-a990-40d4-b7c7-7b9db338c6c8");

vars.put("sign",sign);
System.out.println("companyName:" +    comp);
System.out.println("limit:" +    limit);
System.out.println("es:" +    es);
System.out.println("sign:" +    sign);

 技术图片

 

 

 

 技术图片

 

jmeter调用自己打的jar包

标签:val   encoding   public   ext   unit   digest   代码   png   get   

原文地址:https://www.cnblogs.com/hujinhua/p/14759826.html


评论


亲,登录后才可以留言!