使用jmeter压测批量下载文件

本文介绍了如何使用Badboy录制登录到下载文件的步骤,并将其转换为JMeter脚本。在优化脚本时,禁用了无关请求并添加了响应断言。特别强调了在涉及cookie的登录过程中选择跟随重定向的重要性,以及使用BeanShell取样器保存下载文件的步骤。
部署运行你感兴趣的模型镜像

此次是压测一个下载文件的接口,使用的工具是badbody+jmeter.

1.先使用badbody录制从登录到下载的步骤;录制完成后单击file–Export to jmeter,导出成功后,在jmeter中打开此文件;
2.将录制脚本中的js、jpg等请求禁用或删除;(其他的http请求,查看之后如果看到是没有参数的,直接禁用或删除就可以了)
3.为请求添加响应断言和断言结果;此处我的响应断言是success,依据是开了f12,在Network中查看第一条响应中的内容选取的字段;

在这里插入图片描述
在这里插入图片描述

4.在登录时候需要cookie时候一定记得选择跟随重定向,虽然这里我分的还不是很清楚,但是这样选就没错啦!(自动重定向不能传递cookie和头信息。跟随重定向将最后一个子请求的响应结果作为主请求的响应结果。跟随重定向的结果树可能有几个步骤的请求,只有最后一步才是展示有cookie的,所以看到no cookie 不要慌张)

在这里插入图片描述

5.BeanShell取样器的代码

import java.io.*;

byte[] result = prev.getResponseData(); //这个是获取到请求返回的数据,prev是获取上个请求的返回

String file_name = “E:\new\” + System.currentTimeMillis() + “.zip”; //上一行代表存放文件的位置和文件名,将每次下载的文件都放在不同名称的zip压缩包内(因为我这里每次下载的都是相同文件会被覆盖所以这样处理的)

File file = new File(file_name);

FileOutputStream out = new FileOutputStream(file);

out.write(result);

out.close();

这样整个流程就结束了,回头看到不对的会补充修改的,如果有那里理解的不对也欢迎评论区指点呀~

您可能感兴趣的与本文相关的镜像

Qwen-Image

Qwen-Image

图片生成
Qwen

Qwen-Image是阿里云通义千问团队于2025年8月发布的亿参数图像生成基础模型,其最大亮点是强大的复杂文本渲染和精确图像编辑能力,能够生成包含多行、段落级中英文文本的高保真图像

### 如何使用 JMeter 进行 500 并发批量插入 MySQL 数据库的 #### 准备工作 为了实现这一目标,首先需要确保安装并配置好 Apache JMeter 和 MySQL 驱动程序。下载适用于 MySQL 的 JDBC 驱动包,并将其放置于 JMeter 安装目录下的 `lib` 文件夹内[^3]。 #### 创建试计划 启动 JMeter 后,在线程组设置中定义虚拟用户的数量(即并发数),这里设定为 500 用户;同时调整循环次数来控制每条记录被重复执行的数量。这一步骤决定了模拟负载的程度以及持续时间。 #### 添加 JDBC Connection Configuration 在试计划下新建一个名为 "JDBC Request Defaults" 或者类似的元件用于存储公共属性如数据库 URL、用户名密码等信息。具体参数如下所示: | 参数名 | 描述 | | --- | --- | | Variable Name Prefix | jdbcDataSource | | Database URL | jdbc:mysql://localhost:3306/your_database_name?useSSL=false&serverTimezone=UTC | | JDBC Driver class | com.mysql.cj.jdbc.Driver | 上述表格中的字段需依据实际情况填写相应的值,特别是替换掉占位符部分的内容以匹配本地环境配置[^1]。 #### 编写 SQL 脚本 创建一个新的 “JDBC Sampler”,命名为“Insert Data”。在此组件内部输入要执行的具体 INSERT INTO 语句。如果希望每次运行时都能生成不同的数据,则可以利用函数助手对话框内的随机字符串或其他内置功能来自动生成唯一键值或其它变量内容。 ```sql INSERT INTO your_table (column1, column2) VALUES (${randomValue}, 'fixed text'); ``` 这里的 `${randomValue}` 是通过 JMeter 提供的数据生成功能动态产生的数值,可以根据业务逻辑灵活调整。 #### 执行试 保存整个项目文件之后即可点击绿色播放按钮开始执行试流程。观察监听器窗口获取实时反馈信息,比如响应时间和吞吐量统计图表可以帮助评估当前系统的承载能力及性能瓶颈所在之处。 #### 结果分析 完成一轮完整的迭代过程后,可以通过查看聚合报告、图形化展示等多种方式深入剖析各项指标表现情况,从而为进一步优化提供决策支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值