Потоки JMeter запускаются один раз, в то время как счетчик цикла установлен на «навсегда» с постоянным таймером пропускной способности. - PullRequest
0 голосов
/ 27 января 2019

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

  • У него есть 3 группы потоков.
  • Каждый имеет свой собственный элемент запроса JDBC (1 для удаления, 1 для вставки, 1 для выбора).
  • Я хочу, чтобы все запросы считывали параметры из файла CSV.Я попробовал свой тест с 1 элементом конфигурации набора данных CSV для всего плана тестирования (с режимом общего доступа, установленным для всех активных потоков) и 1 для каждой из групп потоков (с режимом, установленным в текущую группу потоков).
  • Для элементов запроса JDBC для удаления и вставки подготовленный оператор обновления установлен для атрибута Тип запроса.
  • Один элемент запроса для выбора имеет подготовленное значение оператора выбора, установленное для этого поля.
  • Во всех случаях, когда я пытался, атрибуты конфигурации набора данных CSV были установлены на: Recycle on EOF - True, Stop thread on EOF - false.
  • Я использую постоянный таймер пропускной способности для всего плана тестирования.,Для атрибута установлено значение Все активные потоки (общие).
  • Как упомянуто в заголовке - в каждой группе потоков установлен флажок «Число циклов навсегда».Планировщик не используется, и при ошибке выбирается кнопка продолжения (хотя ее нет).
  • В сводном отчете я не получаю исключений java из БД.Только выходные данные запроса и время задержки.

Как уже говорилось, я попробовал 1 исходный файл CSV для всех групп потоков.Теперь я создал 3 разных файла CSV, и проблема не устранена.Я попытался установить время нарастания всех потоков для 0, 0,1, 1, 2, но все равно не повезло.

Просматривая созданный сводный отчет, я всегда вижу одинаковое количество образцов.У меня есть 3 группы потоков, каждая с 80 потоками, поэтому я всегда получаю 240 одинаковых.Даже если тест длился 1, 2, 3 минуты и т. Д. Я пытался завершить тест с отключением и остановкой, и с обоими я получил одно и то же число.

Я хочу, чтобы потоки просто продолжалиПохоже, что они выполняют работу только один раз, а затем просто останавливаются, пока идет тест.Это как-то связано с таймером постоянной пропускной способности?Что мне здесь не хватает?

1 Ответ

0 голосов
/ 27 января 2019

TL; DR

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

Очень глупая ошибка с выводом: проверьте значение пропускной способности, проверьте на более длительные периоды. Надеюсь, это кому-нибудь еще поможет.

Причина заключалась в том, что на сервере, работающем под управлением jmeter не для графического интерфейса пользователя, я создал сценарий оболочки, чтобы принимать количество запросов в секунду, требуемых для текущего теста, и вставлять его в плановое время 60 для соответствующего поля в элемент таймера. Дело в том, что я не умножил на 60, и поэтому пропускная способность была очень низкой. Настолько низко, что для тестов продолжительностью несколько минут я всегда получал одинаковое количество образцов.

Если бы я тестировал более продолжительное время, я бы увидел, что создается больше образцов, но из-за того, что jmeter задерживал потоки для имитации низкой пропускной способности, я видел только первую итерацию.

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