Как создать тест JMeter с параллельным выполнением в одной группе потоков с заданной пропускной способностью c? - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть статистика использования API из производственного кластера, и мне нужно смоделировать ее на тестовом кластере, т.е. выполнить N запросов каждый с заданной скоростью c в минуту. Я достиг желаемого результата со следующей структурой (упрощенно):

- Thread Group #1
  - Auth
  - Loop Controller
    - API Request #1
    - Constant Throughput Timer #1
- Thread Group #2
  - Auth
  - Loop Controller
    - API Request #2
    - Constant Throughput Timer #2
- Thread Group #3
  ...
...

Это выглядит недостаточно хорошо, потому что я вынужден повторять одно и то же Auth и Loop Controller много раз для каждого API Request .

Я предпочитаю иметь структуру плана тестирования, подобную этой:

- Thread Group #1
  - Auth
  - Loop Controller
    - Some Kind of Parallel Controller
      - Simple Controller or Something Like This #1
        - API Request #1
        - Constant Throughput Timer #1
      - Simple Controller or Something Like This #2
        - API Request #2
        - Constant Throughput Timer #2
      - Simple Controller or Something Like This #3
        ...

Единственным хорошо выглядящим инструментом для реализации такого решения был bzm - Parallel Controller, но я не мог заставить его работать со структурой. над. Может я что-то не так делаю.

Может кто-нибудь помочь мне с этим?

1 Ответ

1 голос
/ 20 апреля 2020

Вы не можете, JMeter ожидает предыдущего ответа Sampler перед выполнением следующего Sampler, поэтому, если вы поместите все сэмплеры в одну группу потоков, все запросы будут выполнены со скоростью самого медленного запроса.

Таким образом, ваш подход к различным группам потоков действителен.

Если вам нужно использовать одни и те же общие шаги в нескольких группах потоков вместо их копирования и вставки, подумайте о том, чтобы поместить их в Тестовые фрагменты и связать тестовые фрагменты, используя Модуль контроллера где требуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...