Плагин WebSocket для Jmeter

Может ли кто-нибудь поделиться ссылкой с помощью пробника для протокола Websocket для JMeter?

Я попытался установить по ссылке ниже: https://github.com/kawasima/mod_proxy_websocket.
Но не уверен, как это получить.

Я новичок в этом инструменте. Спасибо и оценены.

Ответ 1

Ссылка в вашем вопросе выглядит не для плагина jmeter, а для прокси-сервера для HTTP-сервера Apache.
Правильная ссылка кажется https://github.com/kawasima/jmeter-websocket - плагин jmeter для протокола WebSocket.

Чтобы использовать его, вы должны:

  • скачать источники проекта;
  • построить ApacheJMeter_WebSocket.jar с помощью maven;
  • поместите банку в директорию $JMETER_HOME/lib/ext/.

Файлы Jar успешно созданы из источников с помощью maven 3.0 (mvn validate compile package):

WebSocket Sampler доступен в списке пробоотборников:

введите описание изображения здесь

Ответ 2

Вот еще один плагин WebSocket для JMeter. Он поддерживает RFC6455 (v13) протокола WebSocket.

Ссылка: https://github.com/maciejzaleski/JMeter

Особенности:

  • Поддерживает HTTPS/HTTPS (ws/wss) версию протокола WebSocket
  • Возможность игнорировать ошибки сертификата SSL.
  • Потоковая передача позволяет единственному подключению оставаться открытым на время тестирования
  • Ответ должен соответствовать предопределенному регулярному выражению
  • Тайм-аут ответа
  • Задержка ответа на ответ (постройте ответ Sampler из нескольких сообщений сервера)
  • Соединение может быть закрыто, если сервер отправляет сообщение, соответствующее предопределенному регулярному выражению

Ответ 3

Вот еще один (довольно новый) плагин JMeter WebSocket: https://bitbucket.org/pjtr/jmeter-websocket-samplers.

См. readme для текущих функций; он все еще находится в активном развитии.

Ответ 4

Я не могу комментировать предыдущий пост. Но этот плагин имеет одну проблему с совпадением при работе с большим количеством потоков. Я получил эту ошибку:

[Problems]
 - Unexpected error: null
java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:953)
java.util.LinkedList$ListItr.next(LinkedList.java:886)
JMeter.plugins.functional.samplers.websocket.ServiceSocket.getResponseMessage(ServiceSocket.java:125)
JMeter.plugins.functional.samplers.websocket.WebSocketSampler.sample(WebSocketSampler.java:156)
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
java.lang.Thread.run(Thread.java:744)

Итак, я просто заменил одну строку в ServiceSocket.java:

protected Deque<String> responeBacklog = new LinkedList<String>();

с этой строкой:

Queue<String> responeBacklog = new ConcurrentLinkedQueue<String>();

Он решил мою проблему:)

Ответ 5

Если вы новичок в Jmeter, вам не нужно тратить много времени на изучение пользовательского интерфейса Jmeter и функцию для тестирования нагрузки на веб-камеру. Теперь у нас есть специальный инструмент для тестирования нагрузки на веб-узлах. Он называется Thor.

Спасибо разработчикам за то, чтобы сделать его простым, легким и открытым.