Могу ли я иметь переменный параметр в CSV Data Config в Jmeter - PullRequest
0 голосов
/ 21 января 2019

enter image description here

Это мой план тестирования, где первая конфигурация набора данных CVS выглядит как

enter image description here

И второй набор данных CSV конфигурируется как

enter image description here

Я хочу прочитать файл, который содержит все имена файлов, и зайти внутрь каждого файла, прочитать каждую строку, сформировать http-запрос и попасть на сервер. Я не хочу использовать контроллер цикла, потому что мне нужен параллелизм с точки зрения запросов в одном файле.

Скажем, file1.csv содержит 10 строк, что равняется 10 http-вызовам, и у меня 5 потоков, тогда потоки должны обрабатывать 10 вызовов одновременно

1 Ответ

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

Вы не можете. Конфигурация набора данных CSV является Элементом конфигурации , согласно документации:

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

тестовые элементы JMeter порядок выполнения выглядит следующим образом:

0. Configuration elements
1. Pre-Processors
2. Timers
3. Sampler
4. Post-Processors (unless SampleResult is null)
5. Assertions (unless SampleResult is null)
6. Listeners (unless SampleResult is null)

Таким образом, ваша переменная ${file} будет нулевой, если не выполняется Sampler и не выполняется 2-й CSVКонфигурация набора данных будет инициализирована до любого выполнения сэмплера.

Если вы хотите читать данные из файлов динамически, рассмотрите возможность использования вместо них функций __ StringFromFile () или __ CSVRead () .

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

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