Jmeter записывает данные в таблицу Excel из нескольких групп потоков, выполняющихся одновременно - PullRequest
0 голосов
/ 02 июля 2018

У меня есть файл Excel, и каждая строка содержит параметры, необходимые для формирования HTTP-запроса для JMeter. План тестирования JMeter имеет 2 группы потоков. Эти группы потоков выполняются одновременно. Каждая группа потоков, рассматриваемая для чтения параметров из строки файла Excel и отправки HTTP-запроса, затем записывает ответ обратно в файл Excel, но из этих нескольких групп потоков может писать только одна группа потоков, другие не могут этого сделать. Кто-нибудь может предложить почему это происходит. (Нет никаких исключений, связанных с одновременным доступом к файлам в журнале JMeter.)

1 Ответ

0 голосов
/ 02 июля 2018

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

Лучшим решением будет передача значений из одной группы в другую с использованием подхода в памяти , то есть без каких-либо промежуточных файлов. Вы можете использовать функцию __setProperty () для определения свойства в 1-й группе потоков и функцию __ P () для чтения значения в 2-й группе потоков.

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

Вы можете установить Inter-Thread Communication Plugin, используя JMeter Plugins Manager .

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