Sdílet prostřednictvím


Export výsledků testů ze služby Azure Load Testing pro použití v nástrojích třetích stran

V tomto článku se dozvíte, jak exportovat výsledky a sestavy testů zátěžového testování Azure. Výsledky si můžete stáhnout pomocí webu Azure Portal, jako artefaktu v pracovním postupu CI/CD, v JMeteru pomocí back-endového naslouchacího procesu nebo zkopírováním výsledků z účtu úložiště Azure. Tyto výsledky můžete použít k vytváření sestav v nástrojích třetích stran nebo při diagnostice selhání testů. Azure Load Testing vygeneruje výsledky testu ve formátu souboru s hodnotami oddělenými čárkami (CSV) a poskytuje podrobnosti o jednotlivých žádostech o aplikaci pro zátěžový test.

Výsledky testů můžete také použít k diagnostice chyb během zátěžového testu. Pole responseCode poskytují responseMessage další informace o neúspěšných požadavcích. Další informace o zkoumání chyb najdete v tématu Diagnostika neúspěšných zátěžových testů.

Řídicí panel Apache JMeter můžete vygenerovat ze souboru protokolu CSV podle zde uvedených kroků.

Řídicí panel výsledků zátěžového testování Azure si také můžete stáhnout jako sestavu HTML pro offline zobrazení a spolupráci.

Požadavky

  • Účet Azure s aktivním předplatným. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
  • Prostředek zátěžového testování Azure, který má dokončené testovací spuštění. Pokud potřebujete vytvořit prostředek azure Load Testing, přečtěte si téma Vytvoření a spuštění zátěžového testu.

Formát souboru výsledků testů

Azure Load Testing vygeneruje soubor CSV výsledků testů pro každou instanci testovacího modulu. Zjistěte, jak můžete škálovat zátěžový test.

Azure Load Testing používá formát protokolu CSV Apache JMeter. Další informace o různýchpolích

Podrobnosti o jednotlivých žádostech aplikace o spuštění zátěžového testu najdete v souboru výsledků testu. Následující fragment kódu ukazuje výsledek ukázkového 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

Přístup k výsledkům a sestavě zátěžového testu a jejich stažení

Po dokončení zátěžového testu můžete získat přístup k výsledkům zátěžového testu a sestavě HTML prostřednictvím webu Azure Portal nebo jako artefakt v pracovním postupu CI/CD.

Důležité

Pro zátěžové testy s více než 45 instancemi modulu nebo delší než 3hodinová doba trvání testovacího běhu není soubor výsledků k dispozici ke stažení. Naslouchací proces back-endu JMeter můžete nakonfigurovat tak, aby výsledky exportovali do úložiště dat podle vašeho výběru nebo zkopírovali výsledky z kontejneru účtu úložiště. U testů s vzorkovníky většími než 30 bude stažená sestava HTML obsahovat pouze grafy pro data agregovaná ve všech vzorkovníkech. Grafy nebudou zobrazovat vzorková data. Stažená sestava navíc nepodporuje grafy odpovídající metrikám na straně serveru.

Stažení výsledků testu a sestavy HTML pro testovací běh na webu Azure Portal:

  1. Na webu Azure Portal přejděte k prostředku azure Load Testing.

  2. V levém podokně vyberte Testy , abyste zobrazili seznam testů a pak ho vybrali.

    Snímek obrazovky se seznamem testů pro prostředek Azure Load Testing

    Tip

    Pokud chcete omezit počet testů, které se mají zobrazit v seznamu, můžete použít vyhledávací pole a filtr časového rozsahu.

  3. Soubor výsledků testu si můžete stáhnout jako komprimovanou složku jedním ze dvou způsobů:

    • Vyberte tři tečky (...) vedle spuštění zátěžového testu, se kterým pracujete, a pak vyberte Stáhnout soubor výsledků.

      Snímek obrazovky, který ukazuje, jak stáhnout soubor výsledků pro spuštění zátěžového testu

      Poznámka:

      Spuštění zátěžového testu musí mít stav Hotovo, Zastaveno nebo Neúspěšné , aby byl soubor výsledků k dispozici ke stažení.

    • V podokně podrobností o testovacím spuštění vyberte Možnost Stáhnout. Pokud si chcete výsledky stáhnout, vyberte Výsledky. Pokud chcete stáhnout sestavu HTML, vyberte Možnost Sestava.

      Snímek obrazovky, který ukazuje, jak stáhnout výsledky testu z podokna Podrobnosti o testovacím spuštění

  4. Ke extrahování složky a přístupu ke staženým souborům můžete použít libovolný nástroj ZIP.

    Snímek obrazovky, který zobrazuje soubor ZIP výsledků testů v seznamu stažené soubory

    Složka výsledků obsahuje samostatný soubor CSV pro každý testovací modul a obsahuje podrobnosti o požadavcích, které testovací modul spustil během zátěžového testu.

    Složka sestavy obsahuje soubor HTML, který poskytuje souhrn testovacího spuštění a grafů metrik výkonu pro offline zobrazení a spolupráci.

Export výsledků testu pomocí back-endových naslouchacích procesů JMeter

Back-endový naslouchací proces JMeter můžete použít k exportu výsledků testů do databází, jako je InfluxDB, MySQL nebo monitorovací nástroje, jako je Aplikace Azure lication Insights.

Můžete použít výchozí naslouchací procesy back-endu JMeter, naslouchací procesy back-endu z jmeter-plugins.org nebo vlastní back-endový naslouchací proces ve formě souboru archivu Java (JAR).

Následující fragment kódu ukazuje příklad použití back-endového naslouchacího procesu pro Aplikace Azure lication Insights v souboru 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>

Úplný příklad použití back-endového naslouchacího procesu Aplikace Azure lication Insights si můžete stáhnout.

Kopírování testovacích artefaktů z kontejneru účtu úložiště

Důležité

Kopírování testovacích artefaktů z kontejneru účtu úložiště je povolené pouze pro zátěžové testy s více než 45 instancemi modulu nebo dobou trvání testovacího běhu delší než tři hodiny.

Pokud chcete zkopírovat výsledky testů a soubory protokolů pro testovací spuštění z účtu úložiště, na webu Azure Portal:

  1. Na webu Azure Portal přejděte k prostředku azure Load Testing.

  2. V levém podokně vyberte Testy , abyste zobrazili seznam testů a pak ho vybrali.

    Snímek obrazovky se seznamem testů pro prostředek Azure Load Testing

  3. V seznamu testovacích běhů vyberte testovací běh.

    Snímek obrazovky znázorňující seznam testovacích běhů pro test v prostředku azure Load Testing

    Tip

    Pokud chcete omezit počet testů, které se mají zobrazit v seznamu, můžete použít vyhledávací pole a filtr časového rozsahu.

  4. V podokně podrobností o testovacím spuštění vyberte Kopírovat artefakty.

    Snímek obrazovky, který ukazuje, jak zkopírovat artefakty testu z podokna Podrobnosti o testovacím spuštění

    Poznámka:

    Spuštění zátěžového testu musí být ve stavu Hotovo, Zastaveno nebo Neúspěšné , aby byl soubor výsledků dostupný ke stažení.

  5. Zkopírujte adresu URL SAS kontejneru účtu úložiště.

    Pomocí adresy URL SAS v Průzkumník služby Azure Storage nebo AzCopy můžete zkopírovat soubory CSV výsledků a soubory protokolu pro testovací spuštění do účtu úložiště.

    Adresa URL SAS je platná 60 minut od okamžiku, kdy se vygeneruje. Pokud platnost adresy URL vyprší, vyberte Kopírovat artefakty a vygenerujte novou adresu URL SAS.