На рынке существует множество типов протоколов. Мы можем добавлять плагины через Jmeter для реализации сценариев. В качестве примера мы возьмем бизнес-стресс-тест протокола WebSocket.
Существует множество плагинов для WebSocket. В этой статье в качестве примера для проведения стресс-тестирования используются JMeter WebSocket Samplers. Сэмплеры JMeter WebSocket имеют следующие функции:
подробныйиллюстрировать Пожалуйста, обратитесь кJMeter WebSocket Samplers Знакомство с плагином
группа потоков->добавить в->пробоотборник,Вы можете увидеть следующие варианты добавления визопробоотборника.,специфическийиллюстрироватьследующее:
Имя коллекционера | иллюстрировать |
---|---|
WebSocket Close | Используется для корректного закрытия соединений веб-сокета. |
WebSocket Open Connection | Для явной установки соединения через веб-сокет |
WebSocket Ping/Pong | Используется для отправки пинг-запросов и получения запросов на понг. |
WebSocket Single Read Sampler | Используется для получения (текстового или двоичного) кадра WebSocket. |
WebSocket Single Write Sampler | Используется для отправки (текстового или двоичного) кадра WebSocket. |
WebSocket request-response Sampler | Используется для выполнения базовых запросов-ответов. |
Ниже для JMeter WebSocket Samplers каждый сборщик конфигурации и использования иллюстрировать
Соответствующая конфигурация иллюстрировать:
Элементы конфигурации | иллюстрировать |
---|---|
протокол | протокол может быть WS или WSS,WSS зашифрован. |
Server name or IP | Доменное имя или IP-адрес |
Port | номер порта |
Path | путь, может быть пустым |
Connection timeout(ms) | Таймаут установления соединения |
Read timeout(ms) | Таймаут ожидания ответа сервера |
3. Добавить веб-сокет Ping/PongКоллекционер,группа потоков->добавить в->пробоотборник->WebSocket Ping/Pong,Этот коллектор используется для отправки пингов и получения запросов на понг.
Соответствующая конфигурация иллюстрировать:
Элементы конфигурации | иллюстрировать |
---|---|
ping/pong(send ping,expect pong) | Используется для отправки пингов и приема понгов. |
pong(just send pong) | Отправляйте только нежелательные понг |
pong(read) timeout(ms) | Указывает, что если JMeter не получит сообщение Pong в течение 20 секунд, сэмплер выйдет из строя. Этот сэмплер будет повторно использовать существующие соединения. |
4. Добавить веб-сокет Single Read SamplerКоллекционер,группа потоков->добавить в->пробоотборник->WebSocket Single Read Sampler,Используется для получения (текстового или двоичного) кадра WebSocket.
Элементы конфигурации | иллюстрировать |
---|---|
use existing connection | Повторное использование существующих соединений |
setup new connection | Создать новое соединение |
Response (read) timeout (ms) | Тайм-аут ответа |
5. Добавить веб-сокет Single Write SamplerКоллекционер,группа потоков->добавить в->пробоотборник->WebSocket Single Write Sampler,Используется для отправки (текстового или двоичного) кадра WebSocket.
Элементы конфигурации | иллюстрировать |
---|---|
use existing connection | Повторное использование существующих соединений |
setup new connection | Создать новое соединение |
Request data | Заполните данные запроса |
6. Добавить веб-сокет request-response SamplerКоллекционер,группа потоков->добавить в->пробоотборник->WebSocket request-response Sampler,Используется для выполнения базовых запросов-ответов.
Элементы конфигурации | иллюстрировать |
---|---|
use existing connection | Повторное использование существующих соединений |
setup new connection | Создать новое соединение |
Request data | Заполните данные запроса |
Response (read) timeout (ms) | Тайм-аут ответа |
7. Добавить веб-сокет CloseКоллекционер,группа потоков->добавить в->пробоотборник->WebSocket Close,Используется для корректного закрытия соединений веб-сокета.
Элементы конфигурации | иллюстрировать |
---|---|
Close Status | закрытиесоединятьчас Определениекод состояния,Первые два байта данных кадриз |
Response (read) timeout (ms) | Тайм-аут ответа |
8. Щелкните правой кнопкой мыши группу потоков.,выбиратьдобавить в -> слушатель -> Посмотреть дерево результатов,существоватьгруппа потоковсерединадобавить вслушатель Посмотреть дерево результаты, используемые для получения ответов на сообщения на стороне сервера.
Выберите необходимый сборщик согласно шагу 2 выше и отредактируйте скрипт. После завершения редактирования скрипта нажмите кнопку «Пуск» вверху страницы, чтобы запустить скрипт.
Проверьте, правильно ли работает сценарий, просмотрев дерево результатов. В левом дереве навигации выберите «Просмотреть дерево результатов», чтобы проверить, соответствуют ли результаты запроса ожидаемым. Если запрос не выполнен, необходимо перенастроить скрипт согласно шагу 2.