无法在需要上传文件的 JMeter 中测试 API

Posted

技术标签:

【中文标题】无法在需要上传文件的 JMeter 中测试 API【英文标题】:Unable to test an API in JMeter where I need to upload a file 【发布时间】:2021-05-09 11:14:21 【问题描述】:

有人可以帮我在 JMeter 上上传文件吗?我觉得这很棘手......

让我分享一下我所做的屏幕截图

enter image description here

失败并出现以下错误: 线程名称:jp@gc - 终极线程组 2-4 样品开始时间:2021-02-04 17:28:44 IST 加载时间:562 连接时间:0 延迟:562 字节大小:595 发送字节数:84568 标头大小(以字节为单位):446 正文大小(以字节为单位):149 样本数:1 错误数:1 数据类型(“文本”|“bin”|“”):文本 响应码:500 响应消息:

HTTPSampleResult 字段: 内容类型:应用程序/json 数据编码:空

响应正文: "timestamp":"2021-02-04T11:58:45.482+00:00","status":500,"error":"Internal Server Error","message":"","path":"/ pps/storage/upload-image"

请求正文: 发布https://pixelperfectdevexternal.useready.com/pps/storage/upload-image

POST 数据: --axOhwnTOrVj2VWGGuxcaqfjgHwGQKsTFl 内容处置:表单数据;名称="文件名" 内容类型:图片/jpeg;字符集=US-ASCII 内容传输编码:8bit

$文件名 --axOhwnTOrVj2VWGGuxcaqfjgHwGQKsTFl 内容处置:表单数据;名称="文件名"; filename="护照尺寸照片.jpeg" 内容类型:图片/jpeg 内容传输编码:二进制

--axOhwnTOrVj2VWGGuxcaqfjgHwGQKsTFl--

从过去 3 周开始,我完全被困在这个问题上,我按照教程中的说明做了,但仍然无法正常工作,请有人帮帮我。

【问题讨论】:

HTTP响应码表示该请求没有被服务器处理。检查您是否能够从 Postman 发出文件上传请求。 如果有为此 HTTP 请求配置的任何 HTTP 标头,您可以分享一个显示该图像的图像。 【参考方案1】:

我们不知道如何解决这个问题,因为我们不知道请求应该是什么样子,而且您没有向我们展示 HTTP 请求采样器的“参数”选项卡和HTTP Header Manager 配置。

因此,如果您有其他方法可以成功调用此 API,例如 curl 或 Postman 或其他工具 - 您应该能够使用 JMeter 的 HTTP(S) Test Script Recorder 记录请求,请参阅 How to Convert Your Postman API Tests to JMeter for Scaling 文章,例如设置。

如果没有,您需要检查您的 API 端点文档、应用程序日志或询问正确的请求格式,一旦您知道正确的请求格式,您应该能够自己修改请求或向我们提供更多详细信息以便我们提供帮助。

【讨论】:

以上是关于无法在需要上传文件的 JMeter 中测试 API的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter之上传文件

JMeter接口测试示例——上传文件

jmeter接口测试-文件上传

Jmeter 接口测试-文件上传报“文件不存在”问题解决

jmeter压测学习49 - 测试文件上传接口(multipart/form-data)

上传下载文件接口测试