Eksportowanie wyników testów z usługi Azure Load Testing do użycia w narzędziach innych firm

Z tego artykułu dowiesz się, jak wyeksportować wyniki testu testowania obciążenia platformy Azure. Wyniki można pobrać przy użyciu witryny Azure Portal, jako artefaktu w przepływie pracy ciągłej integracji/ciągłego wdrażania, w narzędziu JMeter przy użyciu odbiornika zaplecza lub kopiując wyniki z konta usługi Azure Storage. Możesz użyć tych wyników do raportowania w narzędziach innych firm lub do diagnozowania błędów testów. Usługa Azure Load Testing generuje wyniki testu w formacie pliku wartości rozdzielanych przecinkami (CSV) i zawiera szczegółowe informacje o każdym żądaniu aplikacji dla testu obciążeniowego.

Możesz również użyć wyników testu, aby zdiagnozować błędy podczas testu obciążeniowego. Pola responseCode i responseMessage zawierają więcej informacji o żądaniach, które zakończyły się niepowodzeniem. Aby uzyskać więcej informacji na temat badania błędów, zobacz Diagnozowanie zakończonych niepowodzeniem testów obciążeniowych.

Pulpit nawigacyjny Apache JMeter można wygenerować z pliku dziennika CSV, wykonując kroki wymienione tutaj.

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
  • Zasób testowania obciążenia platformy Azure z ukończonym przebiegiem testu. Jeśli musisz utworzyć zasób testowania obciążenia platformy Azure, zobacz Tworzenie i uruchamianie testu obciążeniowego.

Format pliku wyników testów

Testowanie obciążenia platformy Azure generuje plik CSV wyników testu dla każdego wystąpienia aparatu testowego. Dowiedz się, jak skalować test obciążeniowy w poziomie.

Testowanie obciążenia platformy Azure używa formatu dziennika CSV Apache JMeter. Aby uzyskać więcej informacji na temat różnych pól, zobacz słownik JMeter w dokumentacji narzędzia Apache JMeter.

Szczegóły każdego żądania aplikacji dla przebiegu testu obciążeniowego można znaleźć w pliku wyników testu testów. Poniższy fragment kodu przedstawia przykładowy wynik testu:

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

Uzyskiwanie dostępu do wyników testu obciążeniowego i pobieranie ich

Po zakończeniu przebiegu testu obciążeniowego możesz uzyskać dostęp do wyników testu obciążeniowego i pobrać je za pośrednictwem witryny Azure Portal lub jako artefakt w przepływie pracy ciągłej integracji/ciągłego wdrażania.

Ważne

W przypadku testów obciążeniowych z więcej niż 45 wystąpieniami aparatu lub dłuższym niż 3-godzinny czas trwania testu plik wyników nie jest dostępny do pobrania. Możesz skonfigurować odbiornik zaplecza JMeter, aby wyeksportować wyniki do wybranego magazynu danych lub skopiować wyniki z kontenera konta magazynu.

Aby pobrać wyniki testu dla przebiegu testu w witrynie Azure Portal:

  1. W witrynie Azure Portal przejdź do zasobu testowania obciążenia platformy Azure.

  2. W okienku po lewej stronie wybierz pozycję Testy , aby wyświetlić listę testów, a następnie wybierz test.

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

    Napiwek

    Aby ograniczyć liczbę testów do wyświetlenia na liście, możesz użyć pola wyszukiwania i filtru Zakres czasu.

  3. Plik wyników testu można pobrać jako spakowany folder na jeden z dwóch sposobów:

    • Wybierz wielokropek (...) obok przebiegu testu obciążeniowego, z którym pracujesz, a następnie wybierz pozycję Pobierz plik wyników.

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

      Uwaga

      Uruchomienie testu obciążeniowego musi mieć stan Gotowe, Zatrzymane lub Niepowodzenie , aby plik wyników był dostępny do pobrania.

    • W okienku Szczegóły przebiegu testu wybierz pozycję Pobierz, a następnie wybierz pozycję Wyniki.

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

  4. Aby wyodrębnić folder i uzyskać dostęp do wyników testu, możesz użyć dowolnego narzędzia zip.

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

    Folder zawiera oddzielny plik CSV dla każdego aparatu testowego i zawiera szczegółowe informacje o żądaniach wykonywanych przez aparat testowy podczas testu obciążeniowego.

Eksportowanie wyników testów przy użyciu odbiorników zaplecza JMeter

Odbiornik zaplecza JMeter umożliwia eksportowanie wyników testów do baz danych, takich jak InfluxDB, MySQL lub narzędzia do monitorowania, takie jak aplikacja systemu Azure Szczegółowe informacje.

Można użyć domyślnych odbiorników zaplecza JMeter, odbiorników zaplecza z jmeter-plugins.org lub niestandardowego odbiornika zaplecza w postaci pliku archiwum Java (JAR).

Poniższy fragment kodu przedstawia przykład użycia odbiornika zaplecza dla aplikacja systemu Azure Szczegółowe informacje w pliku 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>

Pełny przykład użycia odbiornika zaplecza aplikacja systemu Azure Szczegółowe informacje można pobrać.

Kopiowanie artefaktów testowych z kontenera konta magazynu

Ważne

Kopiowanie artefaktów testowych z kontenera konta magazynu jest włączone tylko w przypadku testów obciążeniowych z więcej niż 45 wystąpieniami aparatu lub czasem trwania testu dłuższym niż trzy godziny.

Aby skopiować wyniki testu i pliki dziennika dla przebiegu testu z konta magazynu, w witrynie Azure Portal:

  1. W witrynie Azure Portal przejdź do zasobu testowania obciążenia platformy Azure.

  2. W okienku po lewej stronie wybierz pozycję Testy , aby wyświetlić listę testów, a następnie wybierz test.

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

  3. Z listy przebiegów testów wybierz przebieg testu.

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

    Napiwek

    Aby ograniczyć liczbę testów do wyświetlenia na liście, możesz użyć pola wyszukiwania i filtru Zakres czasu.

  4. W okienku Szczegóły przebiegu testu wybierz pozycję Kopiuj artefakty.

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

    Uwaga

    Uruchomienie testu obciążeniowego musi mieć stan Gotowe, Zatrzymane lub Niepowodzenie , aby plik wyników był dostępny do pobrania.

  5. Skopiuj adres URL sygnatury dostępu współdzielonego kontenera konta magazynu.

    Adres URL sygnatury dostępu współdzielonego można użyć w Eksplorator usługi Azure Storage lub narzędziu AzCopy, aby skopiować pliki CSV wyników i pliki dziennika dla przebiegu testowego na konto magazynu.

    Adres URL sygnatury dostępu współdzielonego jest ważny przez 60 minut od momentu wygenerowania. Jeśli adres URL wygaśnie, wybierz pozycję Kopiuj artefakty, aby wygenerować nowy adres URL sygnatury dostępu współdzielonego.