Введение в JMeter

Что такое JMeter

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

Тесты для JMeter создаються визуально и имеют древовидную структуру в окне редактирования теста.

Запуск тестов можно производить как из окна приложения, так и из командной строки, что в свою очередь полезно, если вы их запускаете по расписанию, например, ночью.

Для чего он лучше всего подходит

Инструмент позиционирует себя как универсальный, позволяющий работать как с http запросами, так и FTP, JDBC запросы, SOAP, Web Services, TCP, LDAP, JMS, Mail testers. Но, однозначно, он лучше всего "заточен" для нагрузочного тестирования веб-приложений.

Если вы создаете многопользовательское веб-приложение, то перед его выпуском у вас однозначно возникнут вопросы:

  • стабильно ли работает приложение под большой нагрузкой
  • какое максимально возможное число пользователей выдержит приложение на определенной конфигурации
  • насколько быстрее стало работать приложение после улучшения архитектуры кода

На все эти вопросы, с относительно небольшими затратами времени, вам ответит JMeter

Из чего состоит тест

При создании теста JMeter предлагает несколько типов компонент:

  1. Samplers - основные элементы, которые непосредственно общаються с тестируемым приложением, например http sampler для обращения к веб-приложению
  2. Logic controllers - элементы, позволяющие группировать другие элементы в циклы, группы параллельного запуска, и т.д.
  3. Assertions - элементы, выполняющие контроль. С их помощью вы можете проверить текст, который вы ожидаете на веб-странице или, например, указать что вы ожидаете ответ от сервера не более чем 2 секунды. Если какой-либо Assert не будет удовлетворен, тест будет иметь негативный результат.

 

Как выглядит отчет

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

Отчет JMeter

Можно ли расширять JMeter

Можно и нужно. Jmeter сам по себе являеться удобным инструментом для запуска и мониторинга тестов, а также для просмотра отчетов. Поэтому если вам нужны особые виды тестов, которые вы можете написать на Java, то все что вам нужно, это написать код самого теста. Далее его нужно оформить как Sampler, после чего JMeter помагать вам делать всю остальную работу по организации, конфигурированию и выполнению тестов (в том числе и с нескольких компьютеров).