Запись нескольких данных в CSV-файл с использованием постпроцессора Bean Shell в Jmeter - PullRequest
0 голосов
/ 26 февраля 2020

У меня был сценарий, в котором мне нужно записать значения корреляции в файл CSV. И самый простой способ, которым я придумал, это приведенный ниже код в разделе ответов.

Дополнительные предложения приветствуются.

Ответы [ 3 ]

2 голосов
/ 26 февраля 2020

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

0 голосов
/ 26 февраля 2020

Имейте в виду, что начиная с JMeter 3.1 рекомендуется использовать тестовые элементы JSR223 и Groovy язык для любой формы сценариев, поэтому рассмотрите возможность перехода на JSR223 PostProcessor и следующий код :

new File('FILEPATH/filename.csv') << vars.get('PARAM_1') << ',' << vars.get('PARAM_2') << System.getProperty('line.separator')

Однако этот подход будет работать, только если не предполагается параллелизма, если PostProcessor будет выполняться двумя или более параллельными потоками, вы можете столкнуться с условием гонки , когда несколько потоков будут записывать в один файл, что приведет к повреждению данных.

Поэтому я бы порекомендовал объявить ваши PARAM_1 и PARAM_2 как Примеры переменных и сохранить их в файл, используя, например, Flexible File Writer

0 голосов
/ 26 февраля 2020

Добавьте этот код ниже в постпроцессоре Bean Shell

a = vars.get("PARAM_1"); // PARAM_1 is parameter/correlation variable
b = vars.get("PARAM_2"); // PARAM_2 is parameter/correlation variable
f = new FileOutputStream("FILEPATH/filename.csv", true);
p = new PrintStream(f); 
this.interpreter.setOut(p); 
print(a +","+ b);
f.close();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...