jmeter и испытание под давлением длинного соединения

JMeter

jmeter — это Java-приложение, предназначенное для нагрузочного тестирования и оценки производительности. Типы, которые он может тестировать, включают

  • Web - HTTP,HTTPS

  • Служба SOAP/REST

  • FTP

  • База данных через JDBC

  • LDAP

  • ПО промежуточного слоя, ориентированное на сообщения, на основе JMS

  • Почта — SMTP(s), POP3(s) и IMAP(s)

  • сценарий оболочки

  • TCP

  • Java-объект

Ниже приведены в основном TCP

Знакомство с графическим интерфейсом

скачатьПосле завершения jmeter войдите в исходный каталог jmeter.

⇒  ls
LICENSE        NOTICE         README.md      bin            docs           extras         lib            licenses       printable_docs

Выполнить команду в текущем каталоге./bin/jmeterВы можете увидеть графический интерфейс

концепция jmeter

ThreadGroup

Группа потоков является отправной точкой для всех планов тестирования. Все контроллеры и сэмплеры должны находиться в группе потоков.Другие элементы, такие как прослушиватели, могут быть размещены непосредственно под планом тестирования, и в этом случае он применяется ко всем группам потоков. управление группой потоков

  1. количество потоков

  2. Пора запускать все темы

  3. сколько раз тест проводился

Pre-Processor

Выполняется перед запросом сэмплера, обычно используется для изменения настроек или обновления некоторых переменных.

Samplers

Используется для отправки запроса на сервер и ожидания результата. Sampler JMeter включает в себя

  • FTP request

  • HTTP request

  • JDBC request

  • java object request

  • JMS request

  • JUnit Test request

  • Mail request

  • OS Process request

  • TCP request

Assertion

Вернуть результаты запроса на проверку

configuration

он будет добавлен к запросу или изменен запросом

Post-Processor

Выполнить после выполнения сэмплера

logic controller

Настройте некоторую логику обработки jmeter при отправке запросов.

Listener

Используется для получения информации, собранной jmeter во время выполнения, например прослушиватель Graph Result, используемый для рисования времени возврата.

Timer

Перед выполнением каждого семплера задержите выполнение на определенный период времени.

Properties

Свойства JMeter определены в jmeter.properties, который является глобальным.

variables

Он является локальным для каждого потока, и если его изменить в потоке, то он влияет только на этот поток.

Область Jmeter

Структура теста jmeter является как иерархической, так и последовательной.Некоторые элементы строго иерархичны, например (слушатели, элементы конфигурации, постпроцессоры, препроцессоры, утверждения, таймеры), а некоторые расположены последовательно, например (контроллеры, сэмплеры). )

  1. Типичное дерево тестов по порядку выглядит следующим образом, а его порядок запросов — один, два, три, четыре.

  2. На дерево тестов влияет иерархия, утверждение № 1 предназначено только для одного, а утверждение № 2 — для двух и трех.

  3. После добавления таймера таймер №1 будет использоваться для двух/трех/четырех, утверждение №1 будет использоваться только для трех, а таймер №2 повлияет на все запросы.

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

Описание последовательности выполнения

В общем, порядок выполнения

  1. Configuration elements

  2. Pre-Processors

  3. Timers

  4. Sampler

  5. Постпроцессоры (если SampleResult не равен нулю)

  6. Утверждения (если SampleResult не равен нулю)

  7. Слушатели (если SampleResult не равен нулю)

Например, следующий план тестирования

  • Controller

    • Post-Processor 1

    • Sampler 1

    • Sampler 2

    • Timer 1

    • Assertion 1

    • Pre-Processor 1

    • Timer 2

    • Post-Processor 2

Его заказ выполнения

Pre-Processor 1
Timer 1
Timer 2
Sampler 1
Post-Processor 1
Post-Processor 2
Assertion 1

Pre-Processor 1
Timer 1
Timer 2
Sampler 2
Post-Processor 1
Post-Processor 2
Assertion 1

графический интерфейс

После сохранения результатов, настроенных через графический интерфейс, можно пройти./bin/jmeter -t xxx.jmxспособ открыть.

Чтобы сохранить конфигурацию, нужно найти каталог приложения Файл -> сохранить план тестирования как

Запустите тестовую операцию следующим образом

Операция проверки остановки выглядит следующим образом.

Расширение и свертывание также предусмотрены для левого столбца.

Интерфейс группы потоков выглядит следующим образом

Если вы хотите запустить через неграфический интерфейс, вы можете использовать ./bin/jmeter-server для выполнения, а удаленное тестирование может добавить -Jremote_hosts для добавления списка сервисов.Нажмите здесь, чтобы узнать подробности удаленного тестирования

Результаты мониторинга

Если вам нужно автоматически сгенерировать результаты графического интерфейса после завершения теста, вы можете выполнить

./jmeter -n -t ~/Desktop/MyServerHandler.jmx -l ~/Desktop/MyServerHandlerLog.txt -e -o ~/Desktop/MyserverHandlerReport
  • ~/Desktop/MyServerHandlerLog.txt — это пустой файл, в котором хранятся результаты

  • ~/Desktop/MyserverHandlerReport — это пустое пространство, в котором хранятся результаты мониторинга.

  • ~/Desktop/MyServerHandler.jmx Настройте сгенерированный план нагрузочного тестирования через интерфейс

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

/bin/jmeter -g MyServerHandlerLog.txt -o ./MyserverHandlerReport

Связанный контент можно настроить в файле bin/user.properties.

Тестовый пример опыта jmeter

служба длинных соединений nettyServerПредоставляет простые сервисы пульса и эха, запускаяНастроил jmx

Вы можете увидеть соответствующий интерфейс, а затем начать испытание давлением

приложение

официальная домашняя страница jmeter

jmeter мониторинг

Основные элементы jmeter