如何从 Jmeter 发送 csv 文件上传请求

Posted

技术标签:

【中文标题】如何从 Jmeter 发送 csv 文件上传请求【英文标题】:How to send a csv file upload request from Jmeter 【发布时间】:2021-05-08 14:18:44 【问题描述】:

我有一个请求,其中用户上传了一个 csv 文件,然后根据一些标准对该文件进行验证。我已经捕获了来自 blazemeter 的请求(请参阅捕获的请求的屏幕截图)

但是当我使用 Jmeter 击中它时它失败了。 (我正在尝试发送完全相同的请求以及“文件上传”选项中附加的文件)。

我已经检查了开发者的工具,实际发送的请求是:

------WebKitFormBoundaryBk6Qf9RTb4vFvkKw 内容处置:表单数据;名称=“文件”;文件名="EmployeeCSV.csv" 内容类型:application/vnd.ms-excel

------WebKitFormBoundaryBk6Qf9RTb4vFvkKw 内容处置:表单数据;名称="文件扩展"

csv ------WebKitFormBoundaryBk6Qf9RTb4vFvkKw 内容处置:表单数据; name="organisationId"

ZUVMbzBudFM5T2Y2bVNtUHFWWmZCRmJhWFZFTkJGMEVuNk9WKzBsQ2dUWT0= ------WebKitFormBoundaryBk6Qf9RTb4vFvkKw 内容处置:表单数据; name="schemeIdSf"

d0dqVXd5b25wVFArWTFkc3l0dUV5R3V0STlqZ2owVE5FVCtxVGhEZUxESmJydVAzYjBLSkxqdWxLMmQva29WSg== ------WebKitFormBoundaryBk6Qf9RTb4vFvkKw 内容处置:表单数据; name="fileGUID"

1612429088749 ------WebKitFormBoundaryBk6Qf9RTb4vFvkKw--

有人可以帮助我了解如何在 Jmeter 中发送上述请求吗?

【问题讨论】:

【参考方案1】:

HTTP Request 采样器设置对我来说似乎不正确,您需要在“文件上传”选项卡下定义要上传的文件,例如:

我建议使用 JMeter 的 HTTP(S) 测试脚本记录器重新记录您的文件上传事件,JMeter 应该足够智能以生成正确的 HTTP 请求采样器和HTTP Header Manager 配置。

只需确保在录制期间将您的EmployeeCSV.csv 复制到JMeter 安装的“bin”文件夹,只有这样JMeter 才能正确捕获和构建请求。更多信息:Recording File Uploads with JMeter

【讨论】:

以上是关于如何从 Jmeter 发送 csv 文件上传请求的主要内容,如果未能解决你的问题,请参考以下文章

使用 JMeter 从 CSV 文件构建 JSON 批处理

jmeter 如何发送上传图片接口请求

Jmeter - 如何通过多个线程逐行读取 CSV 数据

jmeter从表格批量读取数据

jmeter学习(csv文件参数化)

Jmeter http 压力测试使用csv文件怎么发送XML数据