Экспорт результатов теста из Нагрузочного тестирования Azure для использования в сторонних средствах

Из этой статьи вы узнаете, как экспортировать результаты теста нагрузочного тестирования Azure. Результаты можно скачать с помощью портал Azure в качестве артефакта в рабочем процессе CI/CD, в JMeter с помощью внутреннего прослушивателя или копирования результатов из учетной записи хранения Azure. Эти результаты можно использовать для создания отчетов в сторонних средствах или для диагностики сбоев тестирования. Нагрузочное тестирование Azure создает результаты теста в формате файла с разделительная запятыми (CSV-файл) и содержит сведения о каждом запросе приложения для нагрузочного теста.

Результаты теста также можно использовать для диагностики ошибок во время нагрузочного теста. Поля responseCode содержат responseMessage дополнительные сведения о неудачных запросах. Дополнительные сведения об анализе ошибок см. в разделе "Диагностика неудачных нагрузочных тестов".

Вы можете создать панель мониторинга Apache JMeter из CSV-файла журнала, выполнив действия, упоминание приведенные здесь.

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

Формат файла результатов теста

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

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

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

timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect
1676040230680,104,Homepage,200,OK,172.18.33.7-Thread Group 1-5,text,true,,1607,133,5,5,https://www.example.com/,104,0,100
1676040230681,101,Homepage,200,OK,172.18.33.7-Thread Group 1-3,text,true,,1591,133,5,5,https://www.example.com/,101,0,93
1676040230680,101,Homepage,200,OK,172.18.33.7-Thread Group 1-1,text,true,,1591,133,5,5,https://www.example.com/,98,0,94

Доступ и скачивание результатов нагрузочного теста

После завершения нагрузочного теста можно получить доступ к результатам нагрузочного теста и скачать их с помощью портал Azure или в качестве артефакта в рабочем процессе CI/CD.

Важно!

Для нагрузочных тестов с более чем 45 экземплярами ядра или более 3-часовой продолжительности тестового выполнения файл результатов недоступен для скачивания. Вы можете настроить прослушиватель серверной части JMeter, чтобы экспортировать результаты в хранилище данных вашего выбора или скопировать результаты из контейнера учетной записи хранения.

Чтобы скачать результаты теста для тестового запуска в портал Azure:

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

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

    Screenshot that shows the list of tests for an Azure Load Testing resource.

    Совет

    Чтобы ограничить количество тестов, отображаемых в списке, можно использовать поле поиска и фильтр диапазона времени.

  3. Файл результатов теста можно скачать в виде архивной папки двумя способами:

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

      Screenshot that shows how to download the results file for a load test run.

      Примечание.

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

    • В области сведений о тестовом запуске выберите "Скачать" и выберите "Результаты".

      Screenshot that shows how to download the test results from the 'Test run details' pane.

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

    Screenshot that shows the test results zip file in the downloads list.

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

Экспорт результатов теста с помощью прослушивателей серверной части JMeter

Вы можете использовать серверный прослушиватель JMeter для экспорта результатов теста в такие базы данных, как "ПритокDB", "MySQL" или средства мониторинга, такие как приложение Azure Аналитика.

Вы можете использовать прослушиватели серверной части JMeter по умолчанию, серверные прослушиватели из jmeter-plugins.org или пользовательский серверный прослушиватель в виде файла JAR-файла архива Java.

В следующем фрагменте кода показан пример использования внутреннего прослушивателя для приложение Azure Аналитика в файле JMeter (JMX):

<BackendListener guiclass="BackendListenerGui" testclass="BackendListener" testname="Backend Listener" enabled="true">
  <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
      <elementProp name="testName" elementType="Argument">
        <stringProp name="Argument.name">testName</stringProp>
        <stringProp name="Argument.value">jmeter</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="connectionString" elementType="Argument">
        <stringProp name="Argument.name">connectionString</stringProp>
        <stringProp name="Argument.value">Enter your AppInsights connection string</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="liveMetrics" elementType="Argument">
        <stringProp name="Argument.name">liveMetrics</stringProp>
        <stringProp name="Argument.value">true</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="samplersList" elementType="Argument">
        <stringProp name="Argument.name">samplersList</stringProp>
        <stringProp name="Argument.value"></stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="useRegexForSamplerList" elementType="Argument">
        <stringProp name="Argument.name">useRegexForSamplerList</stringProp>
        <stringProp name="Argument.value">false</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logResponseData" elementType="Argument">
        <stringProp name="Argument.name">logResponseData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logSampleData" elementType="Argument">
        <stringProp name="Argument.name">logSampleData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
    </collectionProp>
  </elementProp>
  <stringProp name="classname">io.github.adrianmo.jmeter.backendlistener.azure.AzureBackendClient</stringProp>
</BackendListener>

Вы можете скачать полный пример использования прослушивателя серверной части приложение Azure Аналитика.

Копирование тестовых артефактов из контейнера учетной записи хранения

Важно!

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

Чтобы скопировать результаты теста и файлы журналов для тестового запуска из учетной записи хранения, в портал Azure:

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

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

    Screenshot that shows the list of tests for an Azure Load Testing resource.

  3. В списке тестовых запусков выберите тестовый запуск.

    Screenshot that shows the list of test runs for a test in an Azure Load Testing resource.

    Совет

    Чтобы ограничить количество тестов, отображаемых в списке, можно использовать поле поиска и фильтр диапазона времени.

  4. В области сведений о тестовом запуске выберите "Копировать артефакты".

    Screenshot that shows how to copy the test artifacts from the 'Test run details' pane.

    Примечание.

    Выполнение нагрузочного теста должно находиться в состоянии "Готово", "Остановлено" или "Сбой", чтобы файл результатов был доступен для скачивания.

  5. Скопируйте URL-адрес SAS контейнера учетной записи хранения.

    URL-адрес SAS можно использовать в служба хранилища Azure Обозреватель или AzCopy для копирования csv-файлов результатов и файлов журналов для тестового запуска в учетную запись хранения.

    URL-адрес SAS действителен в течение 60 минут с момента создания. Если срок действия URL-адреса истек, выберите " Копировать артефакты ", чтобы создать новый URL-адрес SAS.