Наиболее полное и подробное руководство по тестированию интерфейса jmeter во всей сети и подробное объяснение процесса тестирования интерфейса.
Наиболее полное и подробное руководство по тестированию интерфейса jmeter во всей сети и подробное объяснение процесса тестирования интерфейса.

1. Знакомство с Jmeter

Jmeter — это проект с открытым исходным кодом на чистом Java, разработанный компанией Apache, который можно использовать для тестирования интерфейса и тестирования производительности.

Jmeter обладает высокой мобильностью и может работать на разных платформах.

Jmeter может реализовать распределенную нагрузку.

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

Jmeter имеет высокую масштабируемость.

2. Установка Jmeter

1. Для установки JDK рекомендуется версия 1.7 или выше.

2. Зайдите на официальный сайт: http://jmeter.apache.org/download_jmeter.cgi, чтобы загрузить последнюю версию Jmeter. После загрузки распакуйте ее в некитайский каталог, например: D:\.

3. Настройте переменные среды Jmeter.

Язык кода:javascript
копировать
(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

3. Установите язык Jmeter на китайскую среду.

1. Временные настройки

В строке меню Jmeter выберите «Параметры» — «Выбрать язык» — китайский (упрощенный).

Этот метод снова изменит среду на английский язык после перезапуска программного обеспечения.

2. Постоянные настройки

Войдите в каталог apache-jmeter-5.2.1\bin, найдите файл «jmeter.properties», добавьте «language=zh_CN» после строки 37 файла, сохраните его и затем откройте jmeter, чтобы навсегда изменить китайскую среду.

4. Основные компоненты Jmeter

1. План тестирования. Это отправная точка для тестирования с использованием JMeter. Это контейнер для других компонентов тестирования JMeter.

2. Группа потоков: представляет определенное количество пользователей, которое можно использовать для имитации пользователей, отправляющих запросы одновременно. Фактическое содержимое запроса определяется в Sampler, который содержится в группе потоков.

3. Компоненты конфигурации. Поддерживайте информацию о конфигурации, необходимую Sampler, и изменяйте запрошенное содержимое в соответствии с фактическими потребностями.

4. Препроцессор: отвечает за работу перед запросом, часто используется для изменения настроек запроса.

5. Таймер: отвечает за определение интервала задержки между запросами.

6. Сэмплер (Сэмплер). Это наименьшее устройство, которое отправляет запросы на сервер при тестировании производительности и записывает информацию об ответе и время ответа, например: Сэмплер HTTP-запроса, Образец запроса FTP, Образец запроса TCP, Сэмплер запроса JDBC и т. д. , каждый разный. Тип семплера может делать разные типы запросов к серверу в соответствии с заданными параметрами.

7. Постпроцессор: отвечает за работу после запроса и часто получает возвращаемое значение.

8. Утверждение: используется для определения того, соответствует ли результат ответа на запрос ожидаемому пользователем.

9. Слушатель: отвечает за сбор результатов тестирования и определение способа их отображения.

10. Логический контроллер: вы можете настроить поведенческую логику отправки запросов JMeter. Его можно использовать в сочетании с Sampler для моделирования сложных последовательностей запросов.

5. Область применения и порядок выполнения компонентов Jmeter

1. Объем компонентов

Компонент конфигурации: влияет на все компоненты в пределах своей области действия.

Препроцессор: выполняется перед каждым элементом сэмплера в его области действия.

Таймер: действителен для каждого сэмплера в его области действия.

Постпроцессор: выполняется после каждого элемента сэмплера в его области действия.

Утверждение: проверьте результат выполнения каждого элемента сэмплера в его области действия.

Прослушиватель: собирает и представляет информацию о каждом элементе сэмплера в его области действия.

Краткое описание: Определите область действия каждого компонента на основе иерархической структуры каждого компонента.

2. Последовательность выполнения компонентов:

элемент конфигурации->препроцессор->таймер->пробоотборник->постпроцессор->утверждение->слушатель

Что следует отметить:

1. Такие компоненты, как препроцессоры, постпроцессоры и утверждения, могут работать только с сэмплерами, поэтому, если в их области действия нет сэмплеров, они не будут выполняться.

2. Если в одной области имеется несколько компонентов одного типа, эти компоненты будут выполняться последовательно в соответствии с их верхним и нижним порядком в плане тестирования.

6. Процесс тестирования интерфейса Jmeter

Основные шаги для тестирования интерфейса с использованием Jmeter следующие:

1. План испытаний

2. Группа тем

3.Менеджер файлов cookie HTTP

4. Значение HTTP-запроса по умолчанию

5.Сэмплер (HTTP-запрос)

6. Аффирмация

7. Слушатель (просмотр дерева результатов, графических результатов, сводных отчетов и т. д.)

7. Подробное объяснение этапов тестирования интерфейса с помощью Jmeter.

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. Достаточно прочитать эту статью.

https://www.cnblogs.com/csmashang/p/12659093.html

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose