Загрузка файла JMeter с методом HTTP Put не работает - PullRequest
3 голосов
/ 12 марта 2012

Идея состоит в том, чтобы создать сэмплер в 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, как я видел в одном посте, но это изменилосьничего.

Я использую Java 1.7.0 на Windows 7 x64.В jmeter.log ничего интересного не генерируется, и wireshark сообщает мне, что JMeter не отправляет запрос.

Есть идеи?Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 08 августа 2012

Оказывается, это была ошибка, которую милые ребята из JMeter смогли исправить очень быстро: https://issues.apache.org/bugzilla/show_bug.cgi?id=52897

Использование ночной сборки решило мою проблему, и к настоящему времени оно, вероятно, попало в релиз.

0 голосов
/ 08 августа 2012

У меня были проблемы с загрузкой изображений, и я нашел ответы здесь https://stackoverflow.com/a/2115944/455363. После внесения предложенных здесь изменений мне пришлось перезаписать транзакцию и внести изменения, и я смог успешно загрузить файлы.

Надеюсь, это поможет.

0 голосов
/ 13 марта 2012

Используйте Необработанный HTTP-запрос , чтобы выполнить это. Вы можете указать заголовки в запросе данных, а также указать файл, содержащий тело PUT для удобства.

Некоторые подробности можно найти здесь

...