ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 12.01.2024
Просмотров: 25
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОЗДАНИЕ ТЕСТОВ
НА JMETER
Ташибаева Раушан
Что такое JMeter?
Apache JMeter - это инструмент тестирования, используемый для анализа и измерения производительности различных программных сервисов и продуктов. Это чистое программное обеспечение с открытым исходным кодом Java, используемое для тестирования веб-приложений или FTP-приложений.
Он используется для выполнения тестирования производительности, нагрузочного тестирования и функционального тестирования веб-приложений. JMeter также может имитировать большую нагрузку на сервер, создавая тонны виртуальных одновременных пользователей для веб-сервера.
Как JMeter выполняет тестирование?
Давайте посмотрим на различные шаги, выполняемые JMeter во время тестирования:
- Он создает запрос и отправляет на сервер.
- Он получает ответы от сервера, собирает их и визуализирует эти детали в виде диаграммы или графика.
- Он обрабатывает ответ от сервера.
- Он генерирует результат теста в нескольких форматах, таких как текст, XML, JSON, чтобы тестировщик мог анализировать данные.
Преимущества JMeter
Программное обеспечение с открытым исходным кодом Apache JMeter заполняет большую пустоту, упрощая процесс тестирования. Некоторые из преимуществ JMeter включают:
С открытым исходным кодом - JMeter – это программное обеспечение с открытым исходным кодом. Это означает, что его можно скачать бесплатно. Это также 100% чистое Java-приложение. Разработчик может использовать его исходный код, может изменять и настраивать его в соответствии со своими требованиями.
Удобный для пользователя - JMeter имеет комплексный графический интерфейс, который помогает создавать план тестирования и настраивать элементы. Добавление элементов также легко. Вам просто нужно щелкнуть правой кнопкой мыши по древовидному сценарию и добавить то, что вам нужно сделать.
Поддержка – В основном он предназначен для тестирования производительности, но также поддерживает другие нефункциональные тесты, такие как стресс-тестирование, распределенное тестирование, тестирование веб-сервисов и т. Д. Путем создания планов тестирования.
Подробная документация – это одна из самых важных вещей
, на которые следует обратить внимание. Благодаря надежной документации пользователь может иметь четкое представление о каждом шаге, начиная с нуля, включая установку и настройку параметров тестирования и создание окончательного отчета.
Запись – JMeter позволяет пользователю записывать HTTP / HTTPS для создания плана тестирования с использованием средства записи. Мы используем прокси-сервер, который позволяет JMeter отслеживать и записывать ваши действия, пока вы просматриваете свое веб-приложение с помощью обычного браузера.
Отчетность – JMeter поддерживает генерацию отчетов панели мониторинга. С помощью JMeter генерируется множество отчетов, которые помогают пользователю понять результаты выполнения тестов производительности.
Тестирование нагрузки сайта – сеть кофееин Hani
Тестирование нагрузки сайта – мебельной фабрики Romano home
Как правило, каждый тестовый сценарий имеет несколько неразрывно связанных друг с другом частей, которые формируются на основании профиля нагрузки, который, в свою очередь, регламентируется уже в самом ТЗ. В Jmeter минимальный тестовый сценарий состоит из тестового плана (Test Plan), группы потоков (Thread Group) и одного или более сэмплеров (Samplers), с помощью которых происходит отправка запросов на тестируемый веб-сервер.
Группа потоков Группы потоков - это набор потоков. Каждый поток представляет одного пользователя, использующего тестируемое приложение. Он имитирует один реальный запрос пользователя к серверу. Элементы управления для группы потоков также позволяют устанавливать количество потоков для каждой группы.
Данная панель позволяет настроить эмулируемую приложением нагрузку:
- Number of threads – количество эмулируемых пользователей, одновременно работающих с приложением; Инструменты создания текстового сценария Jmeter
- Ramp-up period – промежуток времени, через который выполняется запуск очередного потока (например, если указать Number of threads = 100, а Ramp-up period = 5, то это будет означать, что каждые 5 секунд будет запускаться новый поток);
- Loop count – количество циклов, в течение которых будет выполняться сценарий внутри Thread Group (Forever – сценарий будет выполняться всегда, пока не будет прерван явно);
Параметры Hani
Параметры Ranomo Home (заданы те же параметры что и для Hani)
HTTP Request Sampler используется для отправки HTTP/HTTPS запросов на веб-сервер
- Панель Web Server – необходимо ввести тип протокола, ввести доменное имя / IP-адрес веб-сервера и порт сервера;
- Панель HTTP Request – необходимо выбрать метод запроса, ввести путь к запрашиваемому ресурсу;
Graph Rezults используется для отображения графика сокращения времени отклика каждого сэмплера с точки зрения среднего значения, медианы, отклонения и пропускной способности.
На рисунке ниже представлен график плана тестирования, где мы смоделировали 100 пользователей, которые заходили на сайт https://www.hanicc.kz/.
Чтобы проанализировать производительность тестируемого веб-сервера, необходимо сосредоточиться на 2 параметрах: 1) Пропускная способность; 2) Отклонение;
В этом тесте пропускная способность сервера Hani составляет 1 966,568 в минуту. Это означает, что сервер Google может обрабатывать 1966568 запроса в минуту. Это значение довольно высокое, поэтому мы можем заключить, что сервер Hani имеет хорошую производительность
Отклонение отображается красным цветом — это указывает на отклонение от среднего значения . Чем меньше, тем лучше .
Давайте теперь сравним производительность сервера Hani с другим веб-сервером. Это результат теста производительности сайта https://romanohome.ru/
Пропускная способность тестируемого веб-сайта https://romanohome.ru/ составляет 1661,36 / мин. Это означает, что этот сервер обрабатывает 166136 запросов в минуту, что ниже, чем у Hani.
Отклонение составляет 756, намного выше, чем Hani (160). Таким образом, мы можем определить производительность этого веб-сайта меньше, чем на сервере Hani.
Summary Report
Элемент Summary Report представляет собой сводную таблицу со статистическими показателями выполнения каждого уникального сэмплера в тестовом плане. Данный отчет напоминает Aggregate Report, за исключением того, что он расходует меньше памяти и, среди его показателей, не имеются перцентили
Окно настроек Summary Report
Элемент View Results Tree отображает результаты выполнения сэмплеров, а также связанных с ними элементов подтверждения (Assertions) в виде древовидной структуры в том же порядке, в котором они были Инструменты создания текстового сценария инициализированы в тесте. Помимо результатов выполнения сэмплеров, в листенере также представлены параметры и данные для каждого из них. Например, для каждой запроса, отправляемого с помощью элемента HTTP Sampler, листенер View Results Tree возвращает объект, содержащий в себе параметры отправляемого запроса, а также полученный на него ответ от веб-сервера.
Эти данные отображаются на соответствующих вкладках:
Sampler result (результат выполнения сэмплера) – данная вкладка содержит код ответа, его заголовки, куки и информацию о времени, задержке, размера ответа в байтах и количестве ошибок
Request (запрос) – на данной вкладке отображается информация об отправленном JMeter запросе, его заголовках, URL, методе HTTP и данных cookies
Response data (данные ответа) – на данной вкладке отображается тело ответа