使用HTTP Put方法的JMeter文件上传不起作用
这个想法是在JMeter中构建一个采样器,该采样器将使用HTTP
PUT方法上传文件。我正在尝试遵循官方文档将整个内容主体指定为不带参数名称的文件。
- 应该发生的情况:文件已上传,服务器返回201:已创建
- 实际发生的情况:
java.lang.NullPointerException: charsetName at
java.lang.String.<init>(Unknown Source) at java.lang.String.<init>(Unknown
Source) at
org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sendPutData(HTTPHC4Impl.java:1067)
at
org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:274)
at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62)
at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1054)
at
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1043)
at
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:416)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:271) at
java.lang.Thread.run(Unknown Source)
这似乎表明JMeter在填写请求主体方面存在问题。我可以通过在请求中指定一个参数来消除此错误,但是我希望整个主体都是照片数据。这是我想要完成的CURL行:
curl -u testuser:testpass "http://localhost:8080/photo" -T photo.jpg -H
"content-type:image/jpeg"
我曾尝试在一篇文章中看到将内容编码设置为UTF-8,但这并没有改变。
我在Windows 7 x64上运行Java 1.7.0。jmeter.log中没有产生任何感兴趣的内容,wireshark告诉我JMeter没有发送请求。
有任何想法吗?提前致谢。
回答:
原来,这是一个错误,JMeter的好伙伴能够很快修复:https
:
//issues.apache.org/bugzilla/show_bug.cgi?id=52897
使用每夜构建可以解决我的问题,到目前为止,它可能已纳入发行版。
以上是 使用HTTP Put方法的JMeter文件上传不起作用 的全部内容, 来源链接: utcz.com/qa/406643.html