如何使用JMeter

时间:2017-04-27 10:23:27

标签: jmeter multipart boundary

我使用本指南向使用JMeter的服务器发送多部分POST请求:https://www.blazemeter.com/blog/testing-advanced-rest-api-file-uploads-jmeter

在此请求中,有几个部分,如文件,一些字符串和JSON。

问题是,虽然我在"内容类型"中指定了边界。字段,JMeter设置它想要的任何内容,结果是服务器(Wildfly 10)使用" RESTEASY007500正确拒绝请求:在部分"中找不到Content-Disposition标头。

这里是请求配置:

enter image description here

这里生成的请求:

enter image description here

我设置" jmeter_is_great"但是JMeter生成一个随机边界。 有人有同样的问题吗?我做错了吗?

由于

更新

我问如何设置边界,因为在我的测试开始时,服务器抛出的第一个错误是" RESTEASY007550:无法获得multipart"的边界。 所以我添加了"内容类型"字段,可以包含边界值,但似乎不起作用。 我真的不想在开始时设置一个特定的边界。

现在,我找到了一个配置虽然没有指定边界但可能有人发现它很有用:

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:0)

如果要手动构建多部分请求,请确保在HTTP请求采样器下<{1}}框未选中

JMeter uncheck multipart/form-data

假设已完成,您可以使用HTTP Header Manager设置自定义边界,如:

JMeter Header Manager custom multipart boundary

答案 1 :(得分:0)

要验证服务器是否正在使用JMeter处理无效边界,请在HTTP请求中取消单击use mulitpart/form-data,将HTTP Header Manager设置为Content-type: multipart/form-data,然后在Body Data中添加以下内容:

--pZbVxWMEYBsPH
Content-Disposition: form-data; name="linkImage"
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 8bit

true
--pZbVxWMEYBsPHPpbDCQQBUaAhIlYw0H
Content-Disposition: form-data; name="file"; filename="Small.png"
Content-Type: image/png
Content-Transfer-Encoding: binary

确保没有任何参数或文件上传设置。