Exportera testresultat från Azure Load Testing för användning i verktyg från tredje part
I den här artikeln får du lära dig hur du exporterar testresultat och rapporter för Azure Load Testing. Du kan ladda ned resultaten med hjälp av Azure Portal, som en artefakt i ditt CI/CD-arbetsflöde, i JMeter med hjälp av en lyssnare på serverdelen eller genom att kopiera resultatet från ett Azure Storage-konto. Du kan använda dessa resultat för rapportering i verktyg från tredje part eller för att diagnostisera testfel. Azure Load Testing genererar testresultatet i filformatet kommaavgränsade värden (CSV) och innehåller information om varje programbegäran för belastningstestet.
Du kan också använda testresultaten för att diagnostisera fel under ett belastningstest. Fälten responseCode
och responseMessage
ger dig mer information om misslyckade begäranden. Mer information om hur du undersöker fel finns i Diagnostisera misslyckade belastningstester.
Du kan generera Apache JMeter-instrumentpanelen från CSV-loggfilen genom att följa stegen som beskrivs här.
Du kan också ladda ned instrumentpanelen för Azure Load Testing Result som en HTML-rapport för offlinevisning och samarbete.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
- En Azure Load Testing-resurs som har en slutförd testkörning. Om du behöver skapa en Azure Load Testing-resurs kan du läsa Skapa och köra ett belastningstest.
Testresultatfilformat
Azure Load Testing genererar en CSV-fil för testresultat för varje testmotorinstans. Lär dig hur du kan skala ut belastningstestet.
Azure Load Testing använder Apache JMeter CSV-loggformatet. Mer information om de olika fälten finns i JMeter-ordlistan i Apache JMeter-dokumentationen.
Du hittar information om varje programbegäran för belastningstestkörningen i testresultatfilen. Följande kodfragment visar ett exempeltestresultat:
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
Få åtkomst till och ladda ned belastningstestresultat och rapport
När en belastningstestkörning har slutförts kan du komma åt och ladda ned belastningstestresultaten och HTML-rapporten via Azure Portal eller som en artefakt i ditt CI/CD-arbetsflöde.
Viktigt!
För belastningstester med fler än 45 motorinstanser eller mer än 3 timmars testkörning är resultatfilen inte tillgänglig för nedladdning. Du kan konfigurera en JMeter-serverdelslyssnare för att exportera resultatet till ett datalager som du väljer eller kopiera resultatet från en lagringskontocontainer. För tester med provtagare som är större än 30 har den nedladdade HTML-rapporten endast grafer för data aggregerade över alla provtagare. Diagram visar inte exempelvisa data. Dessutom stöder den nedladdade rapporten inte diagram som motsvarar mått på serversidan.
Så här laddar du ned testresultaten och HTML-rapporten för en testkörning i Azure Portal:
I den vänstra rutan väljer du Tester för att visa en lista över tester och sedan ditt test.
Dricks
Om du vill begränsa antalet tester som ska visas i listan kan du använda sökrutan och tidsintervallfiltret .
Du kan ladda ned testresultatfilen som en zippad mapp på något av två sätt:
Välj ellipsen (...) bredvid den belastningstestkörning som du arbetar med och välj sedan Hämta resultatfil.
Kommentar
En belastningstestkörning måste ha statusen Klar, Stoppad eller Misslyckad för att resultatfilen ska vara tillgänglig för nedladdning.
Välj Ladda ned i fönstret Testkörningsinformation . Om du vill ladda ned resultatet väljer du Resultat. Om du vill ladda ned HTML-rapporten väljer du Rapport.
Du kan använda valfritt zip-verktyg för att extrahera mappen och komma åt de nedladdade filerna.
Resultatmappen innehåller en separat CSV-fil för varje testmotor och innehåller information om begäranden som testmotorn körde under belastningstestet.
Rapportmappen innehåller en HTML-fil som innehåller en sammanfattning av testkörningen och diagram över prestandamåtten för offlinevisning och samarbete.
Exportera testresultat med JMeter-serverdelslyssnare
Du kan använda en JMeter-serverdelslyssnare för att exportera testresultat till databaser som InfluxDB, MySQL eller övervakningsverktyg som Azure Application Insights.
Du kan använda JMeter-standardlyssnare, serverdelslyssnare från jmeter-plugins.org eller en anpassad serverdelslyssnare i form av en Java-arkivfil (JAR).
Följande kodfragment visar ett exempel på hur du använder serverdelslyssnaren för Azure Application Insights i en JMeter-fil (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>
Du kan ladda ned det fullständiga exemplet på hur du använder Azure Application Insights-serverdelslyssnaren.
Kopiera testartefakter från en lagringskontocontainer
Viktigt!
Kopiering av testartefakter från en lagringskontocontainer är endast aktiverat för belastningstester med fler än 45 motorinstanser eller med en testkörningstid som är längre än tre timmar.
Kopiera testresultaten och loggfilerna för en testkörning från ett lagringskonto i Azure Portal:
I den vänstra rutan väljer du Tester för att visa en lista över tester och sedan ditt test.
Välj din testkörning i listan över testkörningar.
Dricks
Om du vill begränsa antalet tester som ska visas i listan kan du använda sökrutan och tidsintervallfiltret .
I fönstret Testkörningsinformation väljer du Kopiera artefakter.
Kommentar
En belastningstestkörning måste vara i statusen Klar, Stoppad eller Misslyckad för att resultatfilen ska vara tillgänglig för nedladdning.
Kopiera SAS-URL:en för lagringskontocontainern.
Du kan använda SAS-URL:en i Azure Storage Explorer eller AzCopy för att kopiera csv-resultatfilerna och loggfilerna för testkörningen till ditt lagringskonto.
SAS-URL:en är giltig i 60 minuter från den tidpunkt då den genereras. Om URL:en upphör att gälla väljer du Kopiera artefakter för att generera en ny SAS-URL.
Relaterat innehåll
- Läs mer om att diagnostisera misslyckade belastningstester.
- Läs mer om att jämföra flera testresultat.
- Läs mer om hur du konfigurerar automatiserad prestandatestning i Azure Pipelines.