Начните работу с JMeter для тестирования производительности вашего веб-сайта

Опубликовано: 2022-05-10

Медленные и неэффективные веб-сайты никогда не привлекут аудиторию. Кроме того, хотя ваш веб-сайт может работать молниеносно во время тестирования, знаете ли вы, как он будет работать, когда произойдет внезапный всплеск трафика? Или если у вашего бизнеса был скачок роста, который требует дополнительных интеграций и функций?

Вам нужен способ проверить производительность вашего веб-сайта в различных сценариях. И вот здесь вступает в действие тестирование производительности. Основная цель тестирования производительности — убедиться, что производительность веб-сайта соответствует ожиданиям, прежде чем он будет выпущен на рынок. Это помогает тестировать скорость, надежность, время отклика и использование ресурсов. Фантастический инструмент с открытым исходным кодом для всего этого тестирования производительности — JMeter. Изучите JMeter глубже и узнайте, как можно реализовать тест в этой статье.

Тестирование производительности JMeter

Зачем тестировать производительность

Целью тестирования производительности является не поиск ошибок, а устранение сбоев производительности. Без проведения тщательного тестирования производительности веб-сайт может страдать от таких проблем, как медленная работа, когда несколько пользователей используют его одновременно, или плохое удобство использования. Одной из наиболее важных причин тестирования производительности является предотвращение простоев.

Знаете ли вы, что около 59% компаний из списка Fortune 500 каждую неделю простаивают около 1,6 часов? В 2013 году 5-минутный простой стоил Google.com колоссальных 545 000 долларов! Неожиданный сбой веб-сервиса стоил Amazon убытков в 1100 долларов в секунду. Источник.

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

Тестирование производительности с использованием JMeter

Приложение Apache JMeter — это программное обеспечение с открытым исходным кодом, основанное исключительно на Java и предназначенное для тестирования нагрузки или тестирования производительности. Впервые он был разработан Стефано Маццокки из Apache Software Foundation. JMeter может имитировать большую нагрузку на сервер, создавая множество виртуальных одновременных пользователей на веб-сервере.

Как JMeter выполняет тестирование

JMeter создает запрос и отправляет его на сервер. Как только он получает запрос сервера, он собирает их и визуализирует эти детали в диаграмме или графике. Затем он обрабатывает запрос сервера и, наконец, генерирует результат теста в нескольких форматах, таких как текст, XML, JSON. На основе собранных данных пользователи могут наблюдать за поведением приложения и узкими местами в производительности, что дает представление о том, где приложение нуждается в улучшениях.

Почему JMeter

  • Открытый исходный код — JMeter — это программное обеспечение с открытым исходным кодом, которое можно загрузить бесплатно.
  • Независимость от платформы — JMeter разработан на Java, самом популярном языке программирования в мире. Поэтому он может работать на любой операционной системе.
  • Поддержка нескольких протоколов . JMeter не только поддерживает тестирование веб-приложений, но и оценивает производительность сервера базы данных. JMeter поддерживает все основные протоколы, такие как HTTP, JDBC, LDAP, SOAP, JMS и FTP.
  • Удобный для пользователя - JMeter имеет всеобъемлющий графический интерфейс, который помогает создавать планы тестирования и настраивать элементы. Добавлять элементы также легко. Вам просто нужно щелкнуть правой кнопкой мыши план тестирования и добавить то, что вам нужно сделать.

Элементы JMeter

  • Группа потоков. Группа потоков представляет собой набор потоков. Каждый поток представляет одного пользователя, использующего AUT. Каждый поток имитирует один реальный запрос пользователя к серверу.
  • Сэмплеры — JMeter поддерживает тестирование HTTP, FTP, JDBC и многих других протоколов. Группы потоков имитируют пользовательские запросы к серверу. Это помогает группе потоков узнать, какие типы запросов (HTTP, FTP и т. д.) ей нужно делать.
  • Слушатели - Слушатели позволяют зрителям просматривать результаты семплеров в виде таблиц, графиков, деревьев или простого текста в некоторых файлах журналов.
  • Конфигурация . Элементы конфигурации в JMeter используются для настройки или изменения запросов сэмплера, направляемых на сервер.

Как установить джметр

Есть только одно условие для загрузки и установки JMeter: в вашей системе должна быть установлена ​​Java.

  • Загрузите JMeter и установите отсюда — https://jmeter.apache.org/download_jmeter.cgi.
  • Чтобы запустить JMeter: папка Apache jmeter > папка bin > нажмите jmeter.bat

Создать план тестирования

Шаг 1. Добавьте группу потоков

Перейдите, чтобы добавить, затем Threads(Users) и выберите Thread users.

Тестирование производительности

Группа тем

Опции

A. Действия, которые необходимо предпринять после возникновения ошибки
B. Количество потоков — количество пользователей
C. Период нарастания в секундах — временной интервал между обращениями пользователей.
D. Количество циклов — сколько раз будет выполняться тест для определенного количества пользователей.

Шаг 2: Добавьте HTTP-запрос

Щелкните правой кнопкой мыши группу Thread, добавьте сэмплер и щелкните Http-запрос.

Опции

А. Добавьте «Имя сервера»
B. Не указывайте http или HTTPS, так как это протоколы, которые будут указаны в другом поле и будут автоматически приняты в случае запроса http.
C. Диалоговое окно «Путь» → добавьте косую черту.

HTTP-запрос

Шаг 3: Добавьте слушателя

Щелкните правой кнопкой мыши группу потоков, добавьте прослушиватель и нажмите «Просмотреть результат в таблице».

Посмотреть Результаты

Шаг 4: Запуск теста

Сохраните тест и нажмите на кнопку с зеленой стрелкой.

Результат в таблицеПосмотреть результат в таблице

Время проанализировать результат

  • Номер образца - №. потоков или пользователей. В отчете будет указано, что «это образец номер 1», что означает, что это поток 1, затем поток № 2 и так далее.
  • Время начала — время начала для каждого потока или пользователя.
  • Имя потока. Здесь имя потока — это, по сути, имя группы потоков. В имени группы потока у нас есть это число 1-1, 1-2… так что это первое означает первую итерацию с первым пользователем, первую итерацию со вторым пользователем и так далее.
  • Метка — метка — это название вашего образца или запроса.
  • Время выборки — сколько времени заняла эта выборка (метка) в мин./с.
  • Статус - Статус запроса.
  • Байты - Полученные байты
  • Отправлено байтов - байты, которые были отправлены
  • Задержка — запрос времени от пользователя/браузера и время ответа. Ответ с точки зрения запроса, переданного с сервера клиенту/браузеру, который не включает время обработки сервером. (только время запроса и ответа)
  • Время подключения. Время подключения — это время, которое потребовалось вашему приложению для подключения к серверу в миллисекундах.

Важно знать, что задержка и время подключения всегда должны быть низкими. Более высокое время соединения или задержка означает, что существует проблема с производительностью веб-сайта.