Как использовать JMeter для тестирования производительности и нагрузки
JMeter испытание нагрузкой
JMeter испытание нагрузкой это процесс тестирования, выполняемый с использованием инструмента нагрузочного тестирования под названием Apache JMeter настольное приложение с открытым исходным кодом, основанное на Java. JMeter для нагрузочного тестирования — это важнейший инструмент, который определяет, может ли тестируемое веб-приложение удовлетворить требования высокой нагрузки или нет. Это также помогает проанализировать общий сервер при большой нагрузке.
JMeter Тестирование производительности
JMeter Тестирование производительности is Тестирование метод, выполняемый с использованием Apache JMeter для проверки производительности веб-приложения. JMeter для тестирования производительности помогает тестировать как статические, так и динамические ресурсы, помогает обнаруживать одновременно работающих пользователей на веб-сайте и обеспечивает разнообразный графический анализ для тестирования производительности. JMeter Тестирование производительности включает нагрузочное тестирование и стресс-тест веб-приложения.
Apache JMeter инструмент тестирования предлагает следующее польза in Тестирование производительности
- JMeter может использоваться для проверки производительности обоих статический ресурсы, такие как JavaСценарий и HTML, а также динамический ресурсы, такие как JSP, сервлеты и AJAX.
- JMeter обнаружить максимальное количество одновременных пользователей, которое может обслужить ваш сайт
- JMeter обеспечивает различные графические анализы отчетов о производительности.
JMeter Тестирование производительности включает в себя:
- нагрузка Тестирование: моделирование ожидаемого использования путем моделирования доступа нескольких пользователей к Веб-службы одновременно.
- Стресс Тестирование: Каждый веб-сервер имеет максимальную нагрузочную способность. Когда нагрузка выходит за пределы лимита, веб-сервер начинает медленно отвечать и выдавать ошибки. Цель Стресс-тестирование состоит в том, чтобы найти максимальную нагрузку, которую может выдержать веб-сервер.
На рисунке ниже показано, как JMeter Нагрузочное тестирование имитирует тяжелую нагрузку:
Создайте план тестирования производительности в JMeter
В этом уроке мы проводим анализ производительности Google.com для 1000 пользователей, используя различные инструменты тестирования производительности чтобы веб-сайт мог справиться с нагрузкой и обеспечить удобство работы с пользователем.
Прежде чем тестировать производительность целевого веб-приложения, мы должны определить:
- Нормальная нагрузка: Среднее количество пользователей, посещающих ваш сайт.
- Тяжелый груз: Максимальное количество пользователей, посещающих ваш сайт.
- Какова ваша цель в этом тесте?
Вот Дорожная карта этого практического примера
Шаг 1) Добавьте группу потоков
- Начните JMeter
- Выберите План тестирования на дереве
- Добавить Группа потоков
Щелкните правой кнопкой мыши «План тестирования» и добавьте новую группу потоков: Добавить -> Темы (Пользователи) -> Группа потоков
На панели управления группой потоков введите «Свойства потока» следующим образом:
- Количество потоков: 100 (Количество пользователей, подключающихся к целевому веб-сайту: 100)
- Количество петель: 10 (Количество времени выполнения тестирования)
- Ramp-Период подъема: 100
Количество потоков и количество циклов другой.
Ramp-Up Period говорит JMeter как долго задерживать перед запуском следующего пользователя. Например, если у нас 100 пользователей и 100-секундный Ramp- Период Up, тогда задержка между запуском пользователей составит 1 секунду (100 секунд/100 пользователей).
Шаг 2) Добавление JMeter элементы
Теперь мы определим, что JMeter элементы в этом тесте. Элементы
-
HTTP-запрос по умолчанию
Этот элемент можно добавить, щелкнув правой кнопкой мыши группу тем и выбрав: Добавить -> Элемент конфигурации -> Параметры HTTP-запроса по умолчанию.
На панели управления «Параметры HTTP-запроса по умолчанию» введите имя тестируемого веб-сайта (http://www.google.com)
-
HTTP-запрос
Щелкните правой кнопкой мыши группу тем и выберите: Добавить -> Пробоотборник -> HTTP-запрос.
В панели управления HTTP-запросами поле «Путь» указывает, какой именно URL-запрос вы хотите отправить на сервер Google.
Например, если вы введете «календарь» в поле «Путь». JMeter создаст URL-запрос http://www.google.com/calendar на сервер Google
Если вы сохраните поле «Путь» пустой JMeter создаст URL-запрос http://www.google.com на сервер Google.
В этом тесте вы оставляете поле Путь пустым, чтобы сделать JMeter создать URL-запрос http://www.google.com на сервер Google.
Шаг 3) Добавление результата графика
JMeter может показать результат теста в формате графика.
Щелкните правой кнопкой мыши План тестирования, Добавить -> слушатель -> Результаты графика
Шаг 4) Запустите тест и получите результат теста.
Press бег кнопку (Ctrl + R) на Панели инструментов, чтобы начать процесс тестирования программного обеспечения. Вы увидите результат теста на графике в режиме реального времени.
На рисунке ниже представлен график плана тестирования, в котором мы смоделировали 100 пользователей, которые зашли на сайт. www.google.com.
В нижней части рисунка в цвете представлена следующая статистика:
- Черный: общее количество отправленных текущих образцов.
- Blue: Текущее среднее значение всех отправленных образцов.
- Red: Текущее стандартное отклонение.
- Зелёная: пропускная способность, которая представляет собой количество запросов в минуту, обрабатываемых сервером.
Давайте проанализируем производительность сервера Google на рисунке ниже.
Для анализа производительности тестируемого веб-сервера следует ориентироваться на 2 параметра
- Увеличить пропускную способность
- Отклонение
Команда Увеличить пропускную способность является наиболее важным параметром. Он отражает способность сервера справляться с большой нагрузкой. высший Пропускная способность better это производительность сервера.
В этом тесте пропускная способность сервера Google составляет 1,491.193/мин. Это означает, что сервер Google может обрабатывать 1,491.193 XNUMX XNUMX запроса в минуту. Это значение довольно велико, поэтому мы можем сделать вывод, что сервер Google имеет хорошую производительность.
Команда отклонение отображается красным цветом – это указывает на отклонение от среднего значения. меньше better.
Давайте сравним производительность сервера Google с другими веб-серверами. Это результат теста производительности веб-сайта. http://www.yahoo.com/ (Вы можете выбрать другие сайты)
Пропускная способность тестируемого веб-сайта http://www.yahoo.com составляет 867.326/мин. Это означает, что этот сервер обрабатывает 867.326 запросов в минуту, что ниже, чем у Google.
Отклонение составляет 2689, что намного выше, чем у Google (577). Таким образом, мы можем определить, что производительность этого веб-сайта ниже, чем у сервера Google.
ПРИМЕЧАНИЕ: Вышеуказанные значения зависят от нескольких факторов, таких как текущая загрузка сервера в Google, скорость вашего интернета, мощность вашего процессора и т. д. Следовательно, очень маловероятно, что вы получите те же результаты, что и выше. Так что не паникуйте! Если вам интересно понять, как нагрузка на сервер влияет на производительность и как ее протестировать, вы можете найти это руководство по нагрузочному тестированию полезно.
УСТРАНЕНИЕ НЕПОЛАДОК
Если вы столкнулись с проблемой при выполнении описанного выше сценария… выполните следующие действия:
- Проверьте, подключаетесь ли вы к Интернету через прокси. Если да, удалите прокси.
- Откройте новый экземпляр Jmeter
- Откройте приложение PerformanceTestPlan.jmx в Джметре
- Double Нажмите «Группа тем» -> «Результат графика».
- Запустить тест