Что такое элемент в JMeter?
Различные компоненты JMeter называются элементами. Каждый элемент предназначен для определенной цели.
На рисунке ниже показаны некоторые общие элементы JMeter.
Изучение всех компонентов за раз - это приглашение к путанице и скуке. Здесь мы обсудим компоненты, которые необходимо знать, прежде чем вы сможете начать тестирование в JMeter.
Остальные компоненты будут обсуждаться по мере их использования в последующих руководствах. В этом руководстве обсуждаются следующие элементы:
- Группа потоков
- Пробоотборники
- Слушатели
- Конфигурация
Группа потоков
Группы потоков - это набор тем. Каждый поток представляет одного пользователя, использующего тестируемое приложение. По сути, каждый поток имитирует один реальный запрос пользователя к серверу.
Элементы управления для группы потоков позволяют установить количество потоков для каждой группы.
Например, если вы установите количество потоков как 100; JMeter создаст и смоделирует 100 запросов пользователей к тестируемому серверу.
Пробоотборники
Как мы уже знаем, JMeter поддерживает тестирование HTTP, FTP, JDBC и многих других протоколов.
Мы уже знаем, что группы потоков имитируют запрос пользователя к серверу.
Но как группа потоков узнает, какой тип запросов (HTTP, FTP и т. Д.) Ей нужно делать?
Ответ - сэмплеры
Пользовательский запрос может быть FTP-запросом, HTTP-запросом, JDBC-запросом и т. Д.
FTP-запрос:
Представим, что вы хотите протестировать производительность FTP-сервера. Для выполнения этой задачи вы можете использовать сэмплер FTP-запросов в JMeter. Этот контроллер позволяет вам отправлять FTP-запросы на «загрузку файла» или «выгрузку файла» на FTP-сервер.
Например, если вы хотите загрузить файл «Test.txt» с тестируемого FTP-сервера, вам необходимо настроить некоторые параметры в JMeter, как показано на рисунке ниже.
JMeter отправит команду FTP на FTP-сервер ftp.example.com, а затем загрузит с этого сервера файл Test.txt.
HTTP-запрос:
Этот сэмплер позволяет отправлять запросы HTTP / HTTPS на веб-сервер.
Рассмотрим пример ниже. JMeter отправляет HTTP-запрос на веб-сайт Google и получает файлы HTML или изображения с этого веб-сайта.
В учебнике JMeter Performance Testing мы расскажем больше об этом HTTP-запросе.
Запрос JDBC:
Этот сэмплер позволяет выполнять тестирование производительности базы данных. Он отправляет JDBC-запрос (SQL-запрос) в базу данных.
Например, на сервере базы данных есть поле test_result, хранящееся в таблице с именем test_tbl. Вы хотите запросить эти данные с сервера базы данных; вы можете настроить JMeter для отправки SQL-запроса на этот сервер для получения данных.
Сэмплер BSF:
Этот сэмплер позволяет вам написать сэмплер, используя язык сценариев BSF.
Вот пример BSF Sampler в JMeter
Образец журнала доступа:
Этот сэмплер позволяет читать журналы доступа и генерировать HTTP-запросы. Журнал может быть изображением, HTML, CSS…
Сэмплер SMTP:
Если вы хотите протестировать почтовый сервер, вы можете использовать сэмплер SMTP. Этот сэмплер используется для отправки сообщений электронной почты по протоколу SMTP.
Слушатели
Слушатели: показывает результаты выполнения теста. Они могут отображать результаты в другом формате, например в виде дерева, таблицы, графика или файла журнала.
Слушатели результатов графика отображают время ответа сервера на графике
Просмотр дерева результатов показывает результаты запроса пользователя в базовом формате HTML.
Таблица Результат показывает сводку результата теста в формате таблицы.
Журнал показывает сводку результатов теста в текстовом файле
Элементы конфигурации
установить значения по умолчанию и переменные для последующего использования сэмплерами.
На рисунке ниже показаны некоторые часто используемые элементы конфигурации в JMeter.
Конфигурация набора данных CSV:
Предположим, вы хотите протестировать веб-сайт для 100 пользователей, выполняющих вход с разными учетными данными. Вам не нужно 100 раз записывать сценарий! Вы можете параметризовать сценарий для ввода разных учетных данных. Эта информация для входа в систему (например, имя пользователя, пароль) может быть сохранена в текстовом файле. JMeter имеет элемент, который позволяет вам читать различные параметры из этого текстового файла. Это «Конфигурация набора данных CSV», которая используется для чтения строк из файла и разделения их на переменные.
Это пример данных CSV. Это текстовый файл, который содержит пользователя и пароль для входа на ваш целевой веб-сайт.
HTTP-менеджер файлов cookie
Давайте разберемся с этим на примере -
Вы использовали свой браузер (Firefox, IE… и т. Д.) Для просмотра www.google.com
Вы входите в систему со своим пользователем и паролем.
Ваше имя пользователя и пароль будут храниться на вашем компьютере в виде файлов cookie.
В следующий раз, когда вы посетите www.google.com, вам не нужно будет снова входить в систему, потому что ваш браузер будет использовать ваши файлы cookie в качестве пользовательских данных для входа.
HTTP Cookie Manager также имеет ту же функцию, что и веб-браузер. Если у вас есть HTTP-запрос, а ответ содержит файл cookie, диспетчер файлов cookie автоматически сохраняет этот файл cookie и будет использовать его для всех будущих запросов к этому конкретному веб-сайту.
HTTP-запрос по умолчанию
Этот элемент позволяет вам устанавливать значения по умолчанию, которые используют ваши контроллеры HTTP-запросов.
Например,
Вы отправляете 100 HTTP-запросов на сервер google.com
Вам нужно будет вручную ввести имя сервера = google.com для всех этих 100 запросов.
Вместо этого вы можете добавить один HTTP-запрос по умолчанию с полем «Имя сервера или IP-адрес» = google.com.
Не нужно 100 раз набирать!
Этот элемент будет подробно объяснен в учебнике JMeter Performance Testing.
Элемент конфигурации входа в систему
Элемент конфигурации входа в систему позволяет добавлять или отменять настройки имени пользователя и пароля в сэмплерах.
Например, вы хотите смоделировать вход одного пользователя на сайт www.facebook.com с именем пользователя и паролем. Вы можете использовать элемент конфигурации входа в систему, чтобы добавить этот параметр пользователя и пароля в запрос пользователя.
Сравнение элемента конфигурации входа и конфигурации данных CSV
Элемент конфигурации входа в систему |
Конфигурация данных CSV |
---|---|
Используется для имитации входа в систему одного пользователя |
Используется для имитации входа нескольких пользователей |
Подходит только для параметра входа в систему (пользователь и пароль) |
Подходит для большого количества параметров |