Управляйте потоками в JMeter, потоки отображаются в активный сеанс, и эти активные сеансы необходимы для получения повторяющихся ответов в течение длительного времени - PullRequest
0 голосов
/ 24 апреля 2020

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

Требование

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

  1. Get Token - запрос отвечает токеном, который используется на шаге 2
  2. Get Session - запрос использует 'токен' с шага 1 и в ответе указано 'session'
  3. Get Payload - запрос использует 'session' для получения полезной нагрузки (Примечание. Это повторяющийся запрос, отправляемый каждые 2 минуты в течение 30 минут.

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

То, что я пробовал

Как видно из рисунка ниже, кратко

  1. Группа потоков, сопоставленная пользователям с Простым контроллером - выполняет шаги 1 и 2. (выше). Она сохраняет необходимую информацию и передает ее следующему элементу.
  2. Во-вторых, у меня есть l oop контроллер использует результат шага 2 для шага 3 и запускает его в al oop.

enter image description here

Issue

  1. При таком подходе я не использую группы потоков эффективно.
  2. Каждый созданный поток будет оставаться живым (в основном идеальным) в течение всей продолжительности шага 3 l oop.
  3. Я не могу возможность увеличить количество пользователей больше, чем количество потоков, ограничивая область тестирования.

Ограничения

  1. Будут присутствовать параллельные пользователи ( приблизительно 8K), каждый новый пользователь будет следовать потоку, как указано выше (шаг 1, 2, 3)
  2. Через каждые 30 минут (шаг 3) каждый созданный пользователь должен быть удален, и новые запросы от этого пользователя должны не создаваться.
  3. Все ответы являются динамическими c и передаются из системы. Поэтому использование их в качестве набора данных не подлежит сомнению.

Подход принят до сих пор

Есть две группы потоков, одна для шага 1 и 2, и попытался использовать файл csv для записи результатов шага 2 и второй группы потоков для чтения из этого файла и выполнить шаг 3 в циклах.

Динамическая запись файла csv и одновременное чтение затруднены. Результаты в нескольких CSV-файлах.

Чтение из CSV-файла также является проблемой, с ограничением на то, что пользователь должен быть активным только в течение 30 минут и никакие дополнительные запросы для него не должны создаваться.

Любые предложения / помощь приветствуются, любые другие решения приветствуются.

...