Использование свойств пользователя JMeter с azure Load Testing

Из этой статьи вы узнаете, как настроить и использовать свойства пользователя Apache JMeter с помощью Нагрузочного тестирования Azure. С помощью свойств пользователя можно настроить тест, сохраняя параметры теста за пределами скрипта тестирования JMeter. Варианты использования для свойств пользователей:

  • Вы хотите использовать скрипт тестирования JMX в нескольких средах развертывания с разными конечными точками приложения.
  • Скрипт тестирования должен соответствовать нескольким шаблонам нагрузки, таким как тесты дыма, пиковая нагрузка или тесты замока.
  • Вы хотите переопределить поведение JMeter по умолчанию, настроив параметры JMeter, например формат файла результатов.

Azure Load Testing поддерживает стандартные свойства Apache JMeter и позволяет отправлять файл свойств пользователя. Для каждого нагрузочного теста можно настроить один файл свойств пользователя.

Кроме того, можно использовать переменные среды и секреты в Нагрузочном тестировании Azure, чтобы настроить тесты.

Примечание.

Нагрузочное тестирование Azure переопределяет определенные свойства JMeter и игнорирует значения, указанные для этих свойств. Дополнительные сведения о списке свойств JMeter, которые переопределяет Azure Load Testing.

Необходимые компоненты

Добавление файла свойств пользователя JMeter в нагрузочный тест

Вы можете определить свойства пользователя для скрипта тестирования JMeter, отправив файл свойств .properties в нагрузочный тест. Нагрузочное тестирование Azure поддерживает один файл свойств JMeter для каждого нагрузочного теста. Дополнительные файлы свойств игнорируются.

В следующем фрагменте кода показан пример файла свойств пользователя, который определяет три свойства пользователя и настраивает jmeter.save.saveservice.thread_name параметр конфигурации:

# peak-load.properties
# User properties for testing peak load
threadCount=250
rampUpSeconds=30
durationSeconds=600

# Override default JMeter properties
jmeter.save.saveservice.thread_name=false

Чтобы добавить файл свойств пользователя в нагрузочный тест с помощью портал Azure, выполните следующие действия.

  1. В портал Azure перейдите к ресурсу Azure Load Testing.

  2. На левой панели выберите "Тесты ", чтобы просмотреть список тестов.

  3. Выберите тест из списка, выбрав проверка box, а затем нажмите кнопку "Изменить". Кроме того, выберите "Создать тест", чтобы создать новый нагрузочный тест .

  4. Перейдите на вкладку "План тестирования".

  5. Выберите файл свойств на компьютере и нажмите кнопку "Отправить ", чтобы отправить файл в Azure.

    Screenshot that shows the steps to upload a user properties file on the Test plan tab on the Edit test pane.

  6. Выберите свойства пользователя в раскрывающемся списке релевантности файла.

    Screenshot that highlights the file relevance dropdown for a user properties file on the Test plan pane.

    Вы можете выбрать только один файл в качестве файла свойств пользователя для нагрузочного теста.

  7. Нажмите кнопку "Применить" , чтобы изменить тест или проверить и создать, а затем создайте новый тест.

Справочные свойства в JMeter

Нагрузочное тестирование Azure поддерживает встроенные функции Apache JMeter для ссылки на свойства пользователей в скрипте тестирования JMeter (JMX). Вы можете использовать функции __property или __P для получения значений свойств из файла свойств, который вы ранее отправили.

В следующем фрагменте кода показан пример ссылки на свойства в JMX-файле:

<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Test home page" enabled="true">
<stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
<elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
    <boolProp name="LoopController.continue_forever">false</boolProp>
    <intProp name="LoopController.loops">-1</intProp>
</elementProp>
<stringProp name="ThreadGroup.num_threads">${__P(threadCount,1)}</stringProp>
<stringProp name="ThreadGroup.ramp_time">${__P(rampUpSeconds,1)}</stringProp>
<boolProp name="ThreadGroup.scheduler">true</boolProp>
<stringProp name="ThreadGroup.duration">${__P(durationSeconds,30)}</stringProp>
<stringProp name="ThreadGroup.delay"></stringProp>
<boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
</ThreadGroup>

Кроме того, можно указать свойства в пользовательском интерфейсе JMeter. На следующем рисунке показано, как использовать свойства для настройки группы потоков JMeter:

Screenshot that shows how to reference user properties in the JMeter user interface.

Журналы ошибок JMeter можно скачать для устранения ошибок во время нагрузочного теста.

Следующие шаги