版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/sunknew/article/details/82843691
起因
项目中开发的一个接口,接收 multipart/form-data
参数,且每个参数都必须指定 Content-Type。现在要使用 JMeter 做性能测试,Files Upload
标签页下的参数可以指定 Content-Type,但是 Parameters
标签页中的参数不可以(需要指定为 application/json
)。这就需要自定义 header 与 body 来实现相关请求的配置。
配置简述
header 配置
添加 HTTP Header Manager
,在 header 中定义 Content-Type 与 boundary,如图:
body 配置
勾掉 Use multipart/form-data for POST
复选框,编辑 Body Data
选项卡,示例:
--test_boundary
Content-Disposition: form-data; name="jsonMsg"
Content-Type: application/json
{"testKey":"key001"}
--test_boundary
Content-Disposition: form-data; name="file1"; filename="test-image.jpg"
Content-Type: image/jpeg
${__FileToString(test-image.jpg,,)}
--test_boundary--
说明:
- 空行,换行,缩进等可参考 RFC1341
- 使用 __FileToString 获取上传的附件
请求信息:
参考
1.Testing REST API File Uploads in JMeter | BlazeMeter
2.Apache JMeter - User’s Manual: Functions and Variables