Jmeter — это проект с открытым исходным кодом на чистом Java, разработанный компанией Apache, который можно использовать для тестирования интерфейса и тестирования производительности.
Jmeter обладает высокой мобильностью и может работать на разных платформах.
Jmeter может реализовать распределенную нагрузку.
Jmeter использует многопоточность, позволяя выполнять одновременную выборку через несколько потоков или одновременную выборку различных функций через независимые потоки.
Jmeter имеет высокую масштабируемость.
1. Для установки JDK рекомендуется версия 1.7 или выше.
2. Зайдите на официальный сайт: http://jmeter.apache.org/download_jmeter.cgi, чтобы загрузить последнюю версию Jmeter. После загрузки распакуйте ее в некитайский каталог, например: D:\.
3. Настройте переменные среды Jmeter.
(1) Новая переменная: JMETER_HOME: D:\apache-jmeter-5.2.1
(2) Добавьте следующие переменные перед переменной CLASSPATH: %JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;%JMETER_HOME%\lib\jorphan.jar;
(3) Добавьте следующую переменную в начале переменной PATH: %JMETER_HOME%\bin;
4. Введите D:\apache-jmeter-5.2.1\bin, дважды щелкните jmeter.bat или введите команду jmeter в окне DOS, чтобы открыть интерфейс jmeter. Установка прошла успешно.
Для настоящего фундамента с нулевой базой: выполните следующие шаги для завершения установки:
Установить jmeter под Windows? Установить jmeter под Mac? Так просто – не проблема! Написано для друзей, которые только начинают работать с jmeter!
https://www.cnblogs.com/csmashang/p/12672157.html
1. Временные настройки
В строке меню Jmeter выберите «Параметры» — «Выбрать язык» — китайский (упрощенный).
Этот метод снова изменит среду на английский язык после перезапуска программного обеспечения.
2. Постоянные настройки
Войдите в каталог apache-jmeter-5.2.1\bin, найдите файл «jmeter.properties», добавьте «language=zh_CN» после строки 37 файла, сохраните его и затем откройте jmeter, чтобы навсегда изменить китайскую среду.
1. План тестирования. Это отправная точка для тестирования с использованием JMeter. Это контейнер для других компонентов тестирования JMeter.
2. Группа потоков: представляет определенное количество пользователей, которое можно использовать для имитации пользователей, отправляющих запросы одновременно. Фактическое содержимое запроса определяется в Sampler, который содержится в группе потоков.
3. Компоненты конфигурации. Поддерживайте информацию о конфигурации, необходимую Sampler, и изменяйте запрошенное содержимое в соответствии с фактическими потребностями.
4. Препроцессор: отвечает за работу перед запросом, часто используется для изменения настроек запроса.
5. Таймер: отвечает за определение интервала задержки между запросами.
6. Сэмплер (Сэмплер). Это наименьшее устройство, которое отправляет запросы на сервер при тестировании производительности и записывает информацию об ответе и время ответа, например: Сэмплер HTTP-запроса, Образец запроса FTP, Образец запроса TCP, Сэмплер запроса JDBC и т. д. , каждый разный. Тип семплера может делать разные типы запросов к серверу в соответствии с заданными параметрами.
7. Постпроцессор: отвечает за работу после запроса и часто получает возвращаемое значение.
8. Утверждение: используется для определения того, соответствует ли результат ответа на запрос ожидаемому пользователем.
9. Слушатель: отвечает за сбор результатов тестирования и определение способа их отображения.
10. Логический контроллер: вы можете настроить поведенческую логику отправки запросов JMeter. Его можно использовать в сочетании с Sampler для моделирования сложных последовательностей запросов.
1. Объем компонентов
Компонент конфигурации: влияет на все компоненты в пределах своей области действия.
Препроцессор: выполняется перед каждым элементом сэмплера в его области действия.
Таймер: действителен для каждого сэмплера в его области действия.
Постпроцессор: выполняется после каждого элемента сэмплера в его области действия.
Утверждение: проверьте результат выполнения каждого элемента сэмплера в его области действия.
Прослушиватель: собирает и представляет информацию о каждом элементе сэмплера в его области действия.
Краткое описание: Определите область действия каждого компонента на основе иерархической структуры каждого компонента.
2. Последовательность выполнения компонентов:
элемент конфигурации->препроцессор->таймер->пробоотборник->постпроцессор->утверждение->слушатель
Что следует отметить:
1. Такие компоненты, как препроцессоры, постпроцессоры и утверждения, могут работать только с сэмплерами, поэтому, если в их области действия нет сэмплеров, они не будут выполняться.
2. Если в одной области имеется несколько компонентов одного типа, эти компоненты будут выполняться последовательно в соответствии с их верхним и нижним порядком в плане тестирования.
Основные шаги для тестирования интерфейса с использованием Jmeter следующие:
1. План испытаний
2. Группа тем
3.Менеджер файлов cookie HTTP
4. Значение HTTP-запроса по умолчанию
5.Сэмплер (HTTP-запрос)
6. Аффирмация
7. Слушатель (просмотр дерева результатов, графических результатов, сводных отчетов и т. д.)
1. План испытаний
Откройте Jmeter, и в левой части меню появится «План тестирования». Здесь мы можем понимать план тестирования как новый пустой проект, в который можно добавить ряд интерфейсов.
2. Группа тем
Добавить метод: щелкните правой кнопкой мыши «Тест» Plan->добавить в->нить(пользователь)->нить Группа。
Описание компонента: Группу потоков можно рассматривать как группу виртуальных пользователей, и каждый поток в группе потоков можно рассматривать как виртуального пользователя.
(1) Количество потоков: то есть количество виртуальных пользователей. Количество установленных потоков также определяет количество виртуальных пользователей.
(2) Время разгона (в секундах): установите время запуска для всех виртуальных пользователей. Если количество потоков равно 20, а время подготовки — 10 секунд, то для запуска 20 потоков потребуется 10 секунд. То есть в секунду запускается в среднем 2 потока.
(3) Количество циклов: количество запросов, отправленных каждым потоком. Если количество потоков 20 и количество циклов 10, то каждый поток отправляет 10 запросов. Общее количество запросов 20*10=200. Если установлен флажок «Навсегда», все потоки будут продолжать отправлять запросы до тех пор, пока кнопка «Стоп» на панели инструментов не будет нажата вручную или пока не истечет установленное время потока.
3. Менеджер HTTP-файлов cookie
добавить вметод:Щелкните правой кнопкой мышинить Группа->добавить в->элемент конфигурации->HTTP Менеджер файлов cookie.
Описание компонента: Менеджер файлов cookie HTTP может хранить и отправлять файлы cookie, как браузер. Если вы хотите отправить HTTP-запрос с файлом cookie, менеджер файлов cookie автоматически сохранит файлы cookie для запроса, а затем, если вы отправите HTTP-запрос из. сайт того же происхождения. Вы можете использовать этот файл cookie.
4. Значение HTTP-запроса по умолчанию.
добавить вметод:Щелкните правой кнопкой мышинить Группа->добавить в->элемент конфигурации->HTTPЗапросить значение по умолчанию。
Описание компонента: Значение HTTP-запроса по умолчанию установлено для облегчения заполнения последующего контента. В основном заполняйте [имя сервера или IP] и [номер порта], чтобы вам не приходилось каждый раз заполнять IP-адрес и номер порта в последующих HTTP-запросах.
5. HTTP-запрос
добавить вметод:Щелкните правой кнопкой мышинить Группа->добавить в->Sampler->HTTPпросить。
Описание компонента: HTTP-запрос включает в себя метод запроса интерфейса, путь запроса, параметры запроса и т. д.
Подробное объяснение HTTP-запросов
(1) Имя: этот атрибут используется для идентификации пробоотборника. Рекомендуется использовать осмысленное имя.
(2) Комментарий: он не влияет на тест. Он записывает только информацию, читаемую пользователем.
(3) Имя или IP-адрес сервера: имя или IP-адрес целевого сервера, отправленные по HTTP-запросу.
(4) Номер порта: номер порта целевого сервера, значение по умолчанию — 80.
(5) Протокол: протокол, используемый при отправке HTTP-запросов на целевой сервер. Это может быть HTTP или HTTPS. Значение по умолчанию — http.
(6) Метод: метод отправки HTTP-запросов. Доступные методы: GET, POST, HEAD, PUT, TRACE, OPTIONS, DELETE и т. д.
(7) Путь: путь к целевому URL-адресу (исключая адрес и порт сервера).
(8) Кодировка контента: метод кодирования контента, значение по умолчанию — iso8859.
(9) Автоматическое перенаправление: если выбран этот параметр, JMeter автоматически перенаправит на новую страницу, когда ответ, полученный после отправки HTTP-запроса, будет 302/301.
(10) Используйте Keep Alive: сохраняйте активное состояние между jmeter и целевым сервером, выбранным по умолчанию.
(11) Используйте multipart/form-data для публикации: при отправке запроса POST используйте для его отправки метод multipart/from-data, который не выбран по умолчанию.
(12) Отправка параметров с запросом. Отправка параметров URL-адресов в запросе. Для URL-адресов с параметрами jmeter предоставляет простой метод параметризации. Пользователи могут устанавливать все параметры URL-адреса в этой таблице. Каждая строка в таблице представляет собой пару значений параметра (соответствует имени 1 = значению 1 в RUL).
6. Утверждение ответа
добавить вметод:Щелкните правой кнопкой мышиHTTPпросить->добавить в->утверждение->ответутверждение。
Описание компонента: Проверьте, успешно ли осуществляется доступ к интерфейсу. Если проверка не удалась, появится сообщение о том, что содержимое утверждения не найдено. Если приглашения нет, это означает успех.
Apply to
Относится к области утверждения. Обычно отправка запроса запускает только один запрос, поэтому просто отметьте «только основная выборка», если отправка запроса может вызвать несколько запросов к серверу, есть основная выборка и подвыборка.
(1)Основная выборка и подвыборки: действия по основным запросам и подзапросам.
(2)Только основной образец: применяется только к основному запросу.
(3)Только подвыборки: применяется только к подзапросам.
(4) Переменная Jmeter: действует на переменные jmeter (введите имя переменной jmeter в поле ввода).
испытательное поле
Текст ответа (соответствует возвращенным данным json), код ответа (соответствует коду возврата: например, 200, 404, 500 и т. д.), информация ответа (соответствующая информация ответа, такая как «ОК»), заголовок ответа (соответствующий заголовок ответа), заголовок запроса (соответствующий заголовок запроса), образец URL-адреса (соответствующий запрошенной URL-ссылке, включая URL-адрес запроса). если есть перенаправление и Перенаправлениеurl)、Документ(текст)、игнорировать статус(одинпросить有多个ответутверждение,Первый ответ утверждает, что это проверено,Этот результат ответа можно игнорировать, если первое утверждение ответа не выполнено.,Перейдем к следующему утверждению. Если следующее утверждение выполнено успешно, транзакция по-прежнему считается успешной), данные запроса (соответствуют данным запроса)
правила сопоставления с образцом
Включает: Содержимое ответа содержит содержимое, которое необходимо сопоставить, что означает, что ответ является успешным. Регулярные выражения поддерживаются.
Сопоставление: содержимое ответа должно полностью соответствовать содержимому, которое необходимо сопоставить, что означает, что ответ является успешным. Он не учитывает регистр и поддерживает регулярные выражения.
Строка: содержимое ответа содержит содержимое, которое необходимо сопоставить, чтобы указать, что ответ успешен. Он чувствителен к регистру и не поддерживает регулярные выражения.
Равенство: содержимое ответа должно быть точно равно содержимому, которое необходимо сопоставить, чтобы указать на успешный ответ. Оно чувствительно к регистру и не поддерживает регулярные выражения.
Нет: эквивалент отрицанию. Если результат истинен, то если вы отметите «Нет», он будет ложным.
Или: если вы не хотите использовать соединение AND (чтобы утверждение было успешным, все шаблоны должны совпадать), параметр OR можно использовать для ИЛИ нескольких шаблонов утверждений (если один шаблон соответствует, утверждение является успешным).
тестовый режим
Фактически это констатированные данные. Нажмите кнопку «Добавить» и введите данные, которые необходимо утвердить.
7. Добавьте слушателя
Добавить метод: группа потоков ->Щелкните правой кнопкой мышидобавить в ->слушатель ->Посмотреть дерево результатов。Обычно вместе сдобавить в Графические результаты、Агрегированная отчетность.
Описание компонента: отображает результаты доступа к интерфейсу в древовидной форме, включая результаты запроса, содержимое запроса и содержимое ответа сервера.
8. Расширенное чтение, которое необходимо использовать при тестировании интерфейса Jmeter. 1. Самая полная и понятная коллекция ошибок отладки jmeter в истории.
https://blog.csdn.net/pengjiangchun/article/details/105381557
2. В jmeter есть два способа реализации ассоциации интерфейса: экстрактор регулярных выражений и экстрактор json. Достаточно прочитать эту статью.