首页 > Web开发 > 详细

JMeter上传文件压力测试

时间:2021-09-06 22:00:47      阅读:22      评论:0      收藏:0      [点我收藏+]

1.新建测试计划

测试计划页并设置用户变量,第一次初始上传的文件名称、文件路径
技术分享图片

 

2.添加HTTP信息管理
技术分享图片

 

如下图: 加入Cookie值技术分享图片

 

 

 

3.BeanShell preprocessor请求文件数据预处理
难点:文件压力测试,每次上传的文件必须不同
解决方式:(1)文件进行每次插入新数据,保存为新文件1M_Sensitive+新生成的随机数.csv
技术分享图片

 

 

 BeanShell代码如下:

import java.io.*;
import java.util.Random;

String filePath=vars.get("Path");
String fileName=vars.get("Name");
System.out.println(filePath+" This is origin file path!");
System.out.println(fileName+" This is origin file name!");

try {
File file = new File(filePath+"\\temp");
//判断文件不为null或文件目录存在
if (!file.exists()){
file.mkdir();//创建文件夹
}else if(file.list().length==0){
System.out.println("文件夹为空,无需初始化删除");
}else{
//取得这个目录下的所有子文件对象
File[] files = file.listFiles();
//遍历该目录下的文件对象
for (File f: files){
f.delete();
}
}
Random ra =new Random();
int num=ra.nextInt(10000)+1;
long r1 = System.currentTimeMillis();
//File csvFile = new File("D:\\Work\\TestData\\Excel\\testData_2_sensitive.xlsx"); // CSV数据文件
String csvFile = filePath+"\\"+fileName;
BufferedReader br = new BufferedReader(new FileReader(csvFile)); // 附加

String newFileName = filePath+"\\temp\\"+fileName.split("\\.")[0]+(ra.nextInt(10000)+1)+"."+fileName.split("\\.")[1];
BufferedWriter bw = new BufferedWriter(new FileWriter(newFileName, true)); // 附加

int bufferSize = 100;
char[] chars = new char[bufferSize];
int read = 0;
while ((read = br.read(chars, 0, bufferSize)) != -1) {
bw.write(chars, 0, read);
}

// 添加新的数据行
bw.append("Good lucky!" + r1);
vars.put("fileList",String.valueOf(newFileName));
System.out.println(newFileName+" This is new file name!");
bw.close();
br.close();
} catch (FileNotFoundException e) {
// File对象的创建过程中的异常捕获
e.printStackTrace();
} catch (IOException e) {
// BufferedWriter在关闭对象捕捉异常
e.printStackTrace();
}

4.添加HTTP请求
(1)设置http协议:https、服务器IP、请求方式、路径

(2)重点设置参数:a.设置UserId, 传参形式必须改成form-data (如下图)

技术分享图片

 

 

 

b.设置文件上传参数(如下图)
技术分享图片

 

 

5.添加响应断言
技术分享图片

 

 

6.添加查看结果树、聚合报告进行数据监控

 

 

JMeter上传文件压力测试

原文:https://www.cnblogs.com/wangqian1002/p/15233060.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!