Diagnostisera misslyckade belastningstester i Azure Load Testing

I den här artikeln får du lära dig hur du diagnostiserar och felsöker misslyckade belastningstester i Azure Load Testing. Azure Load Testing innehåller flera alternativ för att identifiera rotorsaken till ett misslyckat belastningstest. Du kan till exempel använda instrumentpanelen för belastningstest eller ladda ned testresultaten eller testloggfilerna för en djupgående analys. Du kan också konfigurera mått på serversidan för att identifiera problem med programslutpunkten.

Azure Load Testing använder två indikatorer för att fastställa resultatet av ett belastningstest:

  • Teststatus: anger om belastningstestet kunde starta och köra testskriptet till slutet. Teststatusen misslyckades till exempel om det finns ett fel i JMeter-testskriptet, eller om lyssnaren avbröt belastningstestet eftersom för många begäranden misslyckades.

  • Testresultat: anger resultatet av utvärderingen av villkoret för testfel. Om minst ett av testfelskriterierna uppfylldes är testresultatet inställt på Misslyckades.

Beroende på indikatorn kan du använda en annan metod för att identifiera rotorsaken till ett testfel.

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-belastningstestresurs som har en slutförd testkörning. Om du behöver skapa en Azure-belastningstestningsresurs kan du läsa Skapa och köra ett belastningstest.

Fastställa resultatet av ett belastningstest

Använd följande steg för att få resultatet av ett belastningstest:

  1. Gå till din belastningstestningsresurs i Azure-portalen.

  2. Välj Tester i den vänstra rutan för att visa listan över tester.

  3. Välj ett test i listan för att visa alla testkörningar för testet.

    Listan över testkörningar visar fälten Testresultat och Teststatus .

    Screenshot that shows the list of test runs in the Azure portal, highlighting the test result and test status columns.

  4. Alternativt väljer du en testkörning för att visa instrumentpanelen för belastningstest för testkörningen.

    Screenshot that shows the load test dashboard, highlighting status information for a failed test.

Diagnostisera testfel

Du kan använda en annan metod för att diagnostisera ett belastningstestfel baserat på om Azure Load Testing kunde köra och slutföra testskriptet eller inte.

Det gick inte att slutföra belastningstestet

När belastningstestet inte kan slutföras är teststatusen för testkörningen inställd på Misslyckades.

Ett belastningstest kan misslyckas på grund av flera orsaker. Exempel på varför ett belastningstest inte slutförs:

  • Det finns fel i JMeter-testskriptet.
  • Testskriptet använder JMeter-funktioner som Azure Load Testing inte stöder. Lär dig mer om JMeter-funktioner som stöds.
  • Testskriptet refererar till en fil eller ett plugin-program som inte är tillgängligt på testmotorinstansen.
  • Funktionen autostop avbröt belastningstestet eftersom för många begäranden misslyckas och felfrekvensen överskrider tröskelvärdet. Läs mer om funktionen autostop i Azure Load Testing.

Använd följande steg för att diagnostisera ett test som inte slutförs:

  1. Kontrollera felinformationen på instrumentpanelen för belastningstest.
  2. Ladda ned och analysera testloggarna för att identifiera problem i JMeter-testskriptet.
  3. Ladda ned testresultaten för att identifiera problem med enskilda begäranden.

Belastningstestet har slutförts

Ett belastningstest kan köra testskriptet till slutet (teststatusen är lika med Klar), men kanske inte klarar alla villkor för testfel. Om minst ett av testvillkoren inte klarades är testresultatet för testkörningen inställt på Misslyckades.

Använd följande steg för att diagnostisera ett test som inte uppfyller testvillkoren:

  1. Granska kriterierna för testfel i instrumentpanelen för belastningstest.
  2. Granska exempelstatistiken i instrumentpanelen för belastningstest för att ytterligare identifiera vilka begäranden i testskriptet som kan orsaka ett problem.
  3. Granska måtten på klientsidan i instrumentpanelen för belastningstest. Du kan också filtrera diagrammen för en specifik begäran med hjälp av filterkontrollerna.
  4. Ladda ned testresultaten för att hämta felinformation för enskilda begäranden.
  5. Kontrollera hälsomåtten för testmotorn för att identifiera eventuell resurskonkurration på testmotorerna.
  6. Du kan också lägga till appkomponenter och övervaka mått på serversidan för att identifiera flaskhalsar i prestanda för programslutpunkten.

Ladda ned Apache JMeter-arbetsloggar för belastningstestet

När du kör ett belastningstest kör Testmotorerna för Azure Load Testing ditt Apache JMeter-testskript. Under belastningstestet lagrar Apache JMeter detaljerad loggning i arbetsnodloggarna. Du kan ladda ned dessa JMeter-arbetsloggar för varje testkörning i Azure-portalen. Azure Load Testing genererar en arbetslogg för varje testmotorinstans.

Kommentar

Azure Load Testing registrerar endast loggmeddelanden med WARN eller ERROR nivå i arbetsloggarna.

Om det till exempel finns ett problem med ditt JMeter-skript är belastningsteststatusen Misslyckad. I arbetsloggarna kan du hitta ytterligare information om orsaken till problemet.

Följ dessa steg för att ladda ned arbetsloggarna för en Testkörning av Azure Load Testing:

  1. I Azure-portalen går du till din Azure Load Testing-resurs.

  2. Välj Tester för att visa listan över tester och välj sedan ditt belastningstest i listan.

  3. I listan över testkörningar väljer du en testkörning för att visa instrumentpanelen för belastningstest.

  4. På instrumentpanelen väljer du Ladda ned och sedan Loggar.

    Webbläsaren bör nu börja ladda ned en zippad mapp som innehåller JMeter-arbetsnodloggfilen för varje testmotorinstans.

    Screenshot that shows how to download the test log files from the test run details page.

  5. Du kan använda valfritt zip-verktyg för att extrahera mappen och komma åt loggfilerna.

    Filen worker.log kan hjälpa dig att diagnostisera rotorsaken till ett misslyckat belastningstest. På skärmbilden kan du se att testet misslyckades på grund av en fil som saknas.

    Screenshot that shows the JMeter log file content.