JMeter上传文件 点选form-data依旧失败的解决方法

这几天一直在调用JMeter上传文件的一个接口,一直出错,在网上找到一些文章说的注意事项也都注意到了,还是失败,最后终于找到了原因.

1. JMeter在写API的case时,经常会用到全局性header manager, 即 HTTP Header Manager. 这个我在Thread Group下设置了一个content-type=application/json.

2. Thread Group下的HTTP request里,本打算添加一个新的HTTP Header Manager可以覆盖全局的content-type, 然后再设置成form-data就可以了,后来发现,并不是覆盖的关系,而是添加关系.所以一直会报空指针错误,因为文件找到了但是没有被传上去.

3. 在上传文件的HTTP request sampler下,加一个BeanShell PreProcessor, 将全局的content-type remove掉,就可以了. 脚本:

sampler.getHeaderManager().removeHeaderNamed("Content-Type");

4. 如果接下来的case还想再加回content-type=application/json, BeanShell里面代码:

import org.apache.jmeter.protocol.http.control.Header;
sampler.getHeaderManager().add(new Header("Content-Type","application/json"));


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值