JMeter Элементы и компоненты: Группа потоков, Сэмплеры
⚡ Умное резюме
JMeter Элементы являются строительными блоками любого плана тестирования: группы потоков создают виртуальных пользователей, сэмплеры отправляют запросы, слушатели отображают результаты, а элементы конфигурации предоставляют значения по умолчанию и данные, необходимые для этих запросов.
Что такое элемент JMeter?
Различные компоненты JMeter называются Элементами. Каждый элемент предназначен для определенной цели.
На рисунке ниже показаны некоторые общие элементы в JMeter и показывает, как они располагаются в рамках группы потоков.
Изучение всех компонентов за один раз чревато путаницей и скукой. Здесь мы обсудим компоненты, которые необходимо знать, прежде чем вы сможете начать. тестов in JMeter.
Остальные компоненты будут рассмотрены по мере их использования в последующих уроках. Элементы, рассмотренные в этом уроке, перечислены ниже.
Группа потоков
Группа потоков — это набор потоков. Каждый поток представляет собой одного пользователя, использующего тестируемое приложение. По сути, каждый поток имитирует один реальный запрос пользователя к серверу.
Элементы управления для группы потоков позволяют задать количество потоков для каждой группы.
Например, если вы установите количество потоков равным 100, JMeter Будет создано и смоделировано 100 пользовательских запросов к тестируемому серверу, как показано на диаграмме ниже.
В панели «Группы потоков» также предусмотрен период постепенного запуска, который распределяет запуск этих потоков во времени, вместо того чтобы запускать всех пользователей одновременно.
Пробоотборники
Как мы уже знаем, JMeter поддерживает тестирование HTTP, FTP, JDBC и многих других протоколов.
Мы также знаем, что группы потоков имитируют запросы пользователей к серверу.
Но как группа потоков узнает, какой тип запроса (HTTP, FTP и т. д.) ей нужно отправить?
Ответ — сэмплеры.
Запрос пользователя может быть FTP-запросом, HTTP-запросом, JDBC-запросом и так далее. На рисунке ниже перечислены примеры, рассмотренные в этом руководстве.
FTP-запрос
Представим, что вы хотите протестировать производительность FTP-сервера. Для этого можно использовать сэмплер FTP-запросов. JMeter выполнить эту задачу. Этот контроллер позволяет отправлять FTP-запрос «загрузить файл» или «загрузить файл» на FTP-сервер.
Например, если вы хотите загрузить файл «Test.txt» с тестируемого FTP-сервера, вам необходимо настроить некоторые параметры в JMeter как показано на рисунке ниже.
Панель устанавливает сервер на ftp.example.comпорт 21, удаленный файл в Test.txt и опция get(RETR), поэтому JMeter отправляет FTP-команду на этот сервер и загружает файл.
HTTP-запрос
Этот сэмплер позволяет отправлять HTTP/HTTPS-запрос на веб-сервер.
Рассмотрим пример ниже. JMeter отправляет HTTP-запрос на Google веб-сайт и извлекает с него HTML-файлы или изображения.
В учебнике JMeter Тестирование производительностиМы подробнее расскажем об этом HTTP-запросе. Это наиболее показательный пример. тестирование веб-приложений Работа зависит от этого.
JDBC-запрос
Этот сэмплер позволяет выполнять операции с базой данных. тестирование производительности. Он отправляет запрос JDBC (запрос SQL) в базу данных.
Например, на сервере базы данных в таблице с именем test_tbl хранится поле test_result. Вам нужно запросить эти данные с сервера базы данных, поэтому вы можете настроить... JMeter отправить SQL Запрос к этому серверу для получения данных.
В данном случае используется тип запроса SELECT, а сам запрос выглядит следующим образом: select test_result from test_tbl where id = 1Элемент конфигурации JDBC-соединения должен указывать пул, на который указывает поле «Имя переменной».
Сэмплер ЧФ
Этот сэмплер позволяет вам написать сэмплер, используя BSF скриптовый язык.
Вот пример использования BSF Sampler в JMeterс полями для языка скрипта, параметров, передаваемых скрипту, и либо встроенного скрипта, либо внешнего файла скрипта.
Примечание об устаревании: Семейство элементов BSF было признано устаревшим в пользу элементов JSR223 и больше не используется в литературе. JMeter ссылка на компонентВ текущих версиях используйте Сэмплер JSR223 с Groovy, которая компилирует скрипт и работает гораздо лучше под нагрузкой. Панель выше сохранена здесь, потому что она всё ещё содержится в старых планах тестирования.
Образец журнала доступа
Этот сэмплер позволяет считывать журналы доступа и генерировать HTTP-запросы. Записи в журнале могут содержать изображения, HTML-код, CSS-код и так далее.
Поле «Парсер» по умолчанию имеет значение org.apache.jmeter.protocol.http.util.accesslog.TCLogParserа поле «Расположение файла журнала» указывает на JMeter на том журнале, который вы хотите воспроизвести.
Сэмплер SMTP
Если вы хотите протестировать почтовый сервер, вы можете использовать SMTP Sampler. Этот сэмплер используется для отправки электронных писем по протоколу SMTP.
На панели сгруппированы настройки сервера, почтовые адреса, параметры аутентификации и сообщений, а рядом с полем «Порт» отображаются порты по умолчанию: SMTP 25, SSL 465 и StartTLS 587.
Слушатели
Слушатели отображают результаты выполнения теста. Они могут представлять результаты в различных форматах, таких как дерево, таблица, график или файл журнала.
Результаты графика Программа-слушатель отображает время ответа сервера на графике, при этом под графиком выводятся количество выборок, среднее значение, отклонение, пропускная способность и медиана.
Просмотреть дерево результатов Отображает результаты каждого запроса пользователя в базовом HTML-формате, а на вкладке «Результаты Sampler» отображаются время загрузки, задержка, размер и код ответа.
Результаты можно посмотреть в таблице. Представляет собой сводку результатов теста в табличном формате, по одной строке на каждый образец.
В лог-файл записывается та же сводка в текстовом формате, который сохраняется при запуске теста без графического интерфейса пользователя.
лучшая практика: Слушатели графического интерфейса пользователя потребляют память и искажают результаты, поэтому проводите реальные нагрузочные тесты в режиме без графического интерфейса и после этого откройте сохраненный файл с результатами.
Элементы конфигурации
Элементы конфигурации задают значения по умолчанию и переменные для последующего использования сэмплерами.
На рисунке ниже показаны некоторые часто используемые элементы конфигурации в JMeter.
Конфигурация набора данных CSV
Предположим, вы хотите протестировать веб-сайт на 100 пользователях, входящих в систему с разными учетными данными. Вам не нужно записывать скрипт 100 раз. Вы можете параметризовать скрипт для ввода различных учетных данных. Эта информация для входа (например, имя пользователя и пароль) может храниться в текстовом файле. JMeter В файле есть элемент, позволяющий считывать различные параметры из этого текстового файла. Это элемент «CSV Data Set Config», который используется для чтения строк из файла и разделения их на переменные.
Это пример данных в формате CSV. Это текстовый файл, содержащий имена пользователей и пароли, используемые для входа на целевой веб-сайт.
HTTP-менеджер файлов cookie
Позвольте нам понять это на примере.
Вы использовали свой браузер (Firefox(например, Chrome и т.д.) для просмотра www.google.com.
Для входа в систему используйте свое имя пользователя и пароль.
Ваше имя пользователя и пароль будут сохранены на вашем компьютере в виде файлов cookie.
В следующий раз, когда вы посетите www.google.comВам не нужно будет снова входить в систему, поскольку ваш браузер будет использовать ваши файлы cookie в качестве пользовательских данных для авторизации.
Менеджер HTTP-файлов cookie обладает теми же функциями, что и веб-браузер. Если вы отправляете HTTP-запрос, и ответ содержит файл cookie, менеджер файлов cookie автоматически сохраняет этот файл cookie и использует его для всех будущих запросов к этому конкретному веб-сайту.
Параметры HTTP-запроса по умолчанию
Этот элемент позволяет вам установить значения по умолчанию, которые используют ваши контроллеры HTTP-запросов.
Например,
Вы отправляете 100 HTTP-запросов на сервер google.com.
Для каждого из 100 запросов вам придётся вручную вводить имя сервера google.com.
Вместо этого можно добавить один элемент HTTP Request Defaults, в поле «Server Name or IP» которого будет установлено значение google.com, как показано ниже.
Нет необходимости вводить это 100 раз. Этот элемент будет подробно объяснен в руководстве. JMeter Тестирование производительности.
Элемент конфигурации входа
Элемент «Конфигурация входа» позволяет добавлять или изменять настройки имени пользователя и пароля в сэмплерах.
Например, вы хотите смоделировать вход одного пользователя на веб-сайт. www.facebook.com с именем пользователя и паролем. Вы можете использовать элемент конфигурации входа, чтобы добавить эти имя пользователя и пароль в запрос пользователя.
Элемент конфигурации входа в систему против конфигурации набора данных CSV
| Элемент конфигурации входа | Конфигурация набора данных CSV |
|---|---|
| Используется для имитации входа одного пользователя. | Используется для имитации входа в систему нескольких пользователей. |
| Подходит только для ввода параметров авторизации (имя пользователя и пароль). | Подходит для большого количества параметров |
Вместе эти два элемента охватывают практически все сценарии использования учетных данных, с которыми вы можете столкнуться. инструменты тестирования производительности Работа.



















.png)

