JMeter - управление полосой пропускания не работает
Я пытаюсь запустить тест-план, используя разные качества сети. Для этого я установил "HTTP-запрос по умолчанию", чтобы они все использовали HTTP 3.1 или 4.
Затем я передал свойства следующим образом:
-Jhttpclient.socket.http.cps = 21888 -Jhttpclient.socket.https.cps = 21888
Однако не похоже, что он делает много, нужно ли мне также включить настройку в user.properties (до 0), которую я затем могу перезаписать свойством?
Я делаю это с распределенным планом тестирования (несколько генераторов нагрузки в режиме без графического интерфейса), но так как все они запускаются через один "главный" узел, я думаю, что они все получат это свойство.
1 ответ
Вам нужно запустить все ведомые устройства, используя эти аргументы командной строки -J, или изменить файл user.properties для каждого ведомого устройства, чтобы он работал.
Свойства не передаются автоматически ведомым от главного узла. Вы также можете попробовать ключ -G, согласно полному списку параметров командной строки
-G, --globalproperty <argument>=<value>
Define Global properties (sent to servers)
e.g. -Gport=123
or -Gglobal.properties
Также помните, что все ведомые устройства являются достаточно независимыми, поэтому каждый из них будет иметь дросселирование 21888 символов в секунду, поэтому совокупная пропускная способность будет суммой всех ведомых устройств.
См. Как имитировать различные скорости сети в вашей статье нагрузочного теста JMeter для получения дополнительной информации об имитации различных сетей во время теста JMeter.