性能测试工具 Jmeter 使用 BeanShell 引用外部 jar 包,验证 jar 包中算法结果

机械师 · 2023年10月26日 · 最后由 jacky 回复于 2023年10月27日 · 4872 次阅读

#Jmeter 使用 BeanShell 引用外部 jar 包
1,在测试计划的 ClassPath 中选取本地 jar 包;

2,在线程组中添加 BeanShell 取样器

3,在 BeanShell 取样器中编写脚本

代码释义:
引入外部 jar 包中的类,并将运行的结果写入本地文件中

import cn.xxx.xxx.frame.utils.SnowFlake;
import java.io.BufferedWriter;
import java.io.FileWriter;

long qid = SnowFlake.nextNumber();
System.out.println(qid);

try {
    BufferedWriter writer = new BufferedWriter(new FileWriter("/Users/xxx/Desktop/qid.csv",true));
    String idstr = qid.toString();
    writer.write(idstr);
    writer.newLine();
    writer.close();
} catch (IOException e) {
    e.printStackTrace();
}

读取本地文件中导出的内容,判断是否有重复的 id,并将重复的 id 输出。

public static void checkQId(){
    try {
        BufferedReader bufferedReader = new BufferedReader(new FileReader("/Users/xxx/Desktop/qid.csv"));
        Set<String> all = new HashSet<>();
        List<String> repeat = new LinkedList<>();

        Stream<String> lines = bufferedReader.lines();
        lines.forEach(p -> {
            int sizeFirst = all.size();
            all.add(p);
            int sizeSecond = all.size();
            if(sizeSecond == sizeFirst){
                repeat.add(p);
            }
        });

        System.out.println(repeat);
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
}
共收到 1 条回复 时间 点赞

为什么取出来不放到列表里,放文件里多麻烦😀

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册