Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel leert u hoe u de testresultaten en rapporten van Azure Load Testing exporteert. U kunt de resultaten bekijken in de Azure-portal, de resultaten downloaden via de Azure-portal, opslaan als een artefact in uw CI/CD-werkstroom, in JMeter met behulp van een back-endlistener, in Locust met behulp van gebeurtenishaken of listenerplugs, of door de resultaten van een Azure-opslagaccount te kopiëren. U kunt deze resultaten gebruiken voor rapportage in hulpprogramma's van derden of voor het diagnosticeren van testfouten. Azure Load Testing genereert de testresultaten in csv-bestandsindeling (door komma's gescheiden waarden) en bevat details van elke toepassingsaanvraag voor de belastingtest.
U kunt ook de testresultaten gebruiken om fouten te diagnosticeren tijdens een belastingstest. De responseCode velden en responseMessage velden geven u meer informatie over mislukte aanvragen. Zie Foutieve belastingstests diagnosticeren voor meer informatie over het onderzoeken van fouten.
U kunt het Apache JMeter-dashboard genereren vanuit het CSV-logboekbestand volgens de stappen die hier worden vermeld.
U kunt ook het dashboard met het Azure Load Testing Result downloaden als een HTML-rapport voor offlineweergave en samenwerking.
Vereiste voorwaarden
- Een Azure-account met een actief abonnement. Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.
- Een Azure Load Testing-resource met een voltooide testuitvoering. Als u een Azure Load Testing-resource wilt maken, kijkt u bij Een belastingstest maken en uitvoeren.
Bestandsindeling van testresultaten
Azure Load Testing genereert een CSV-bestand met testresultaten voor elk testengine-exemplaar. Meer informatie over hoe u uw belastingstest kunt uitschalen.
Azure Load Testing maakt gebruik van de CSV-logboekindeling van Apache JMeter. Zie de JMeter-woordenlijst in de Apache JMeter-documentatie voor meer informatie over de verschillende velden.
U vindt de details van elke toepassingsaanvraag voor de belastingtestuitvoering in het testresultatenbestand. In het volgende fragment ziet u een voorbeeldtestresultaat:
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
Weergeven en downloaden van de resultaten en het rapport van de belastingtest
Nadat een belastingtest is voltooid, kunt u de resultaten van de belastingstest en het HTML-rapport bekijken en downloaden via Azure Portal of als artefact in uw CI/CD-werkstroom.
Belangrijk
Voor belastingstests met meer dan 45 engine-exemplaren of een testduur van meer dan 3 uur is het resultatenbestand niet beschikbaar om te downloaden. U kunt een JMeter-back-endlistener configureren om de resultaten te exporteren naar een gegevensarchief van uw keuze of de resultaten uit een opslagaccountcontainer te kopiëren. Voor tests met meer dan 30 samplers heeft het gedownloade HTML-rapport alleen grafieken voor gegevens die zijn geaggregeerd over alle samplers. In grafieken worden geen per-sampler gegevens weergegeven. Daarnaast biedt het gedownloade rapport geen ondersteuning voor grafieken die overeenkomen met metrische gegevens aan de serverzijde.
De testresultaten en het HTML-rapport voor een testuitvoering bekijken en downloaden in Azure Portal:
Ga in Azure Portal naar uw Azure Load Testing-resource.
Selecteer in het linkerdeelvenster Tests om een lijst met tests weer te geven en selecteer vervolgens uw test.
Aanbeveling
Als u het aantal tests wilt beperken dat in de lijst wordt weergegeven, kunt u het zoekvak en het tijdsbereikfilter gebruiken.
U kunt het testresultatenbestand op twee manieren downloaden als een gezipte map:
Selecteer het beletselteken (...) naast de belastingtest waarmee u werkt en selecteer vervolgens het resultatenbestand downloaden.
Opmerking
Een belastingtestuitvoering moet de status Geslaagd, Mislukt, Voltooid of Gestopt hebben om het resultatenbestand te kunnen downloaden.
Selecteer Download in het deelvenster Testuitvoeringsdetails. Als u de resultaten wilt downloaden, selecteert u Resultaten en selecteert u Downloaden. Als u het HTML-rapport wilt downloaden, selecteert u Rapport.
Als u de resultatenbestanden in de opslagcontainer wilt weergeven, selecteert u Downloaden in het deelvenster Details van de testuitvoering , selecteert u Resultaten en selecteert u Weergave. U kunt de resultatenbestanden van alle testengines weergeven in het rechtercontextvenster. Selecteer het bestand dat u wilt downloaden en selecteer Downloaden.
U kunt elk zip-hulpprogramma gebruiken om de map te extraheren en toegang te krijgen tot de gedownloade bestanden.
De map met resultaten bevat een afzonderlijk CSV-bestand voor elke testengine en bevat details van aanvragen die de test-engine heeft uitgevoerd tijdens de belastingstest.
De rapportmap bevat een HTML-bestand dat een overzicht biedt van de testuitvoering en grafieken van de metrische prestatiegegevens voor offlineweergave en samenwerking.
Testresultaten exporteren met listeners
Voor tests op basis van JMeter kunt u een back-endlistener van JMeter gebruiken om testresultaten te exporteren naar databases zoals InstroomDB, MySQL of bewakingshulpprogramma's zoals Azure Application Insights.
U kunt de standaard-JMeter-back-endlisteners, back-endlisteners uit jmeter-plugins.org of een aangepaste back-endlistener gebruiken in de vorm van een Java-archiefbestand (JAR).
In het volgende codefragment ziet u een voorbeeld van het gebruik van de back-endlistener voor Azure-toepassing Insights in een JMeter-bestand (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>
U kunt het volledige voorbeeld van het gebruik van de Azure Applicatie Insights back-endlistener downloaden.
Voor locust-gebaseerde tests kunt u event hooks of listener plugins gebruiken.
Testartefacten kopiëren uit een opslagaccountcontainer
Belangrijk
Het kopiëren van testartefacten uit een container van een opslagaccount is alleen ingeschakeld voor loadtests met meer dan 45 engine-instances of met een testduur van meer dan drie uur.
In de Azure-portal: Kopieer de testresultaten en logboekbestanden voor een testuitvoering vanuit een opslagaccount.
Ga in Azure Portal naar uw Azure Load Testing-resource.
Selecteer in het linkerdeelvenster Tests om een lijst met tests weer te geven en selecteer vervolgens uw test.
Selecteer uw testuitvoering in de lijst met testuitvoeringen.
Aanbeveling
Als u het aantal tests wilt beperken dat in de lijst wordt weergegeven, kunt u het zoekvak en het tijdsbereikfilter gebruiken.
Selecteer in het deelvenster Details van de testrunDownloaden, selecteer Resultaten en selecteer Weergeven. U kunt de opslagcontainerweergave zien met de resultatenbestanden.
Opmerking
Een belastingtestuitvoering moet de status Gereed, Gestopt of Mislukt hebben, zodat het resultatenbestand kan worden gedownload.
Selecteer SAS-URL kopiëren om de SAS-URL van de container van het opslagaccount te kopiëren.
U kunt de SAS-URL in Azure Storage Explorer of AzCopy gebruiken om de resultaten van CSV-bestanden en de logboekbestanden voor de testuitvoering naar uw opslagaccount te kopiëren.
De SAS-URL is 60 minuten geldig vanaf het moment dat deze wordt gegenereerd. Als de URL verloopt, selecteert u Artefacten kopiëren om een nieuwe SAS-URL te genereren.
Verwante inhoud
- Meer informatie over het diagnosticeren van mislukte belastingstests.
- Meer informatie over het vergelijken van meerdere testresultaten.
- Meer informatie over het configureren van geautomatiseerde prestatietests in Azure Pipelines.