#performance #testing #jmeter #distributed
Вопрос:
В настоящее время я вручную разделяю csv-файлы для распределенного тестирования Jmeter с 3 машин. Но мне нужен сценарий оболочки, который автоматически разделит csv-файлы на основе количества групп потоков
Ответ №1:
Если вы хотите задать уникальные значения для каждого потока, вы можете просто сделать это, изменив некоторые значения в конфигурации набора данных CSV:
- Повторная обработка на EOF : Ложь
- Остановить поток на EOF : Верно
- Режим общего доступа: Все потоки
После этих значений каждый поток в вашем jmx получит уникальные значения из вашего CSV-файла.
Ответ №2:
Если вам нужен сценарий оболочки — продолжайте и напишите его. Это не служба написания кода, вы должны попытаться что-то сделать сами и обратиться к сообществу, если столкнетесь с проблемой.
Обычно нет необходимости разделять CSV-файл для подсчета групп потоков, вам просто нужно выбрать соответствующий режим общего доступа в конфигурации набора данных CSV
В качестве исключения здесь приведен пример сценария оболочки, который разбивает CSV-файл на количество групп потоков в сценарии .jmx:
#!/usr/bin/env bash
threadGroups=`grep -c ""ThreadGroup"" test.jmx`
split --suffix-length="${threadGroups}" --additional-suffix=.csv -d --number="l/${threadGroups}" "test.csv" "."/
Замените test.jmx
и test.csv
с именами/местоположениями ваших файлов .jmx и .csv
он будет генерировать .CSV-файлы в виде 000.csv
, 001.csv
, и т.д.
Дополнительная информация: Команда разделения в Linux с примерами