Java 生成Jar包,导入Jmeter中使用

Java 生成Jar包,导入Jmeter使用

Java生成Jar包

编写java代码

import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.math.RandomUtils;
import sun.awt.windows.WPrinterJob;

public class AesEncrypt{
    public static String aesEncrypt(String content, String encryptKey) throws Exception {
        if (StringUtils.isBlank(encryptKey)) {
            return content;
        }
        return Base64Encode.base64Encode(AesEncryptToBytes.aesEncryptToBytes(content, encryptKey));
    }

    public static String get_encrypter(String encry,int xdata,int ydata){
        String encrypt = null;
        int x=xdata;
        int y=ydata;
        String content = "{\"x\":"+x+",\"y\":"+y+"}";

        try {
            encrypt = aesEncrypt(content, encry);
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("error:");
        }
        System.out.println("encrypt:"+encrypt);
        return encrypt;
    }
    public static void main(String args[]) {
        String secrete_str="bfpCWGSPC4ZmUdXi";
        int x=203;
        int y=5;
        String content = "{\"x\":x,\"y\":Y}";
        System.out.println("加密密钥和解密密钥:" + secrete_str);
        System.out.println("加密前:" + content);
        String encrypt = null;
        encrypt=get_encrypter(secrete_str,x,y);
        System.out.println("加密后:" + encrypt);
    }
}




main函数用来调试jar包使用
crtl+shift+alt+s 导出Project Structre面板
Java 生成Jar包,导入Jmeter中使用_第1张图片
JAR----> From modules with dependencies
Java 生成Jar包,导入Jmeter中使用_第2张图片
填上包含Main函数的class包路径。比如我的文件直接在src下,就直接填入AesEncrypt,你们要是有其他路径例如:com.company,记得带上路径名com.company.yourclass

然后点击 OK

在主面板上点击 Build->Build ArtifactsJava 生成Jar包,导入Jmeter中使用_第3张图片
Build Artifacts面板上,选择刚才构建的名字,点击build

路径下:output/artifacts/jarname/jarname.jar 生成jar包

测试此jar包,在jar包路径下:

java -jar MyEncrypt.jar para0 para1 para2

Jmeter导入jar包

将jar包拷贝至%jemter_path%\lib\ext(不需要在测试计划面板添加jar包)
在beanshell后置处理模块中,使用模块:

import AesEncrypt;
String secretKey_str=vars.get("secretKey");
String aes=AesEncrypt.get_encrypter(secretKey_str,203,5);
vars.put("aes_en1", aes);

有什么问题可以查看控制台log,点击右上角的三角形可以显示控制台

在这里插入图片描述

在Jmeter其他地方${}使用beanshell变量

Java 生成Jar包,导入Jmeter中使用_第4张图片
Jmeter写beanshell过程中,注意要写分号“;”,python不用写分号,容易忽略这点。

你可能感兴趣的:(自动化)