Diagnostika neúspěšných zátěžových testů v Azure Load Testing

V tomto článku se dozvíte, jak diagnostikovat a řešit potíže se selháním zátěžových testů ve službě Azure Load Testing. Azure Load Testing nabízí několik možností pro identifikaci původní příčiny neúspěšného zátěžového testu. Můžete například použít řídicí panel zátěžového testu nebo stáhnout výsledky testů nebo soubory protokolu testů pro podrobnou analýzu. Případně nakonfigurujte metriky na straně serveru tak, aby identifikovaly problémy s koncovým bodem aplikace.

Azure Load Testing používá k určení výsledku zátěžového testu dva indikátory:

  • Stav testu: označuje, jestli byl zátěžový test schopen úspěšně spustit a spustit testovací skript až do konce. Stav testu je například neúspěšný , pokud ve skriptu testu JMeter dojde k chybě nebo pokud naslouchací proces automatického naslouchacího procesu přerušil zátěžový test, protože se nezdařilo příliš mnoho požadavků.

  • Výsledek testu: označuje výsledek vyhodnocení kritérií selhání testu. Pokud bylo splněno alespoň jedno z kritérií selhání testu, je výsledek testu nastavený na Neúspěšné.

V závislosti na indikátoru můžete k identifikaci původní příčiny selhání testu použít jiný přístup.

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 zátěžového testování Azure, přečtěte si téma Vytvoření a spuštění zátěžového testu.

Určení výsledku zátěžového testu

Výsledek zátěžového testu získáte pomocí následujících kroků:

  1. Na webu Azure Portal přejděte k vašemu prostředku zátěžového testování.

  2. Výběrem možnosti Testy v levém podokně zobrazíte seznam testů.

  3. Výběrem testu ze seznamu zobrazíte všechna testovací spuštění pro tento test.

    V seznamu testovacích běhů se zobrazí pole Výsledek testu a Stav testu.

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

  4. Případně vyberte testovací běh, abyste zobrazili řídicí panel zátěžového testu pro testovací běh.

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

Diagnostika selhání testů

K diagnostice selhání zátěžového testu můžete použít jiný přístup založený na tom, jestli bylo možné spustit a dokončit testovací skript nebo ne.

Zátěžový test se nepodařilo dokončit.

Pokud se zátěžový test nedokončí, stav testu testovacího spuštění je nastavený na Neúspěšné.

Zátěžový test se nemůže dokončit z několika důvodů. Příklady, proč zátěžový test nedokončí:

  • V testovacím skriptu JMeter došlo k chybám.
  • Testovací skript používá funkce JMeter, které Azure Load Testing nepodporuje. Seznamte se s podporovanými funkcemi JMeter.
  • Testovací skript odkazuje na soubor nebo modul plug-in, který není k dispozici v instanci testovacího modulu.
  • Funkce automatického zastavení přerušila zátěžový test, protože příliš mnoho požadavků selhává a míra chyb překračuje prahovou hodnotu. Přečtěte si další informace o funkcích automatického dokončování ve službě Azure Load Testing.

Pomocí následujících kroků můžete diagnostikovat, že se test nedokončuje:

  1. Ověřte podrobnosti o chybě na řídicím panelu zátěžového testu.
  2. Stáhněte a analyzujte testovací protokoly a identifikujte problémy v testovacím skriptu JMeter.
  3. Stáhněte si výsledky testu a identifikujte problémy s jednotlivými požadavky.

Zátěžový test byl dokončen.

Zátěžový test může spustit testovací skript až do konce (stav testu se rovná Dokončeno), ale nemusí projít všemi kritérii selhání testu. Pokud alespoň jedno z kritérií testu neproběhlo, je výsledek testu testovacího spuštění nastavený na Neúspěšné.

Následující postup vám pomůže diagnostikovat, že test nesplňuje kritéria testu:

  1. Zkontrolujte kritéria selhání testu na řídicím panelu zátěžového testu.
  2. Zkontrolujte statistiku sampleru na řídicím panelu zátěžového testu a zjistěte, které požadavky v testovacím skriptu můžou způsobit problém.
  3. Zkontrolujte metriky na straně klienta na řídicím panelu zátěžového testu. Volitelně můžete grafy filtrovat pro konkrétní požadavek pomocí ovládacích prvků filtru.
  4. Stáhněte si výsledky testu a získejte informace o chybách pro jednotlivé požadavky.
  5. Ověřte metriky stavu testovacího modulu a identifikujte možné kolize prostředků v testovacích modulech.
  6. Volitelně můžete přidat komponenty aplikací a monitorovat metriky na straně serveru a identifikovat kritické body výkonu pro koncový bod aplikace.

Stažení protokolů pracovního procesu Apache JMeter pro zátěžový test

Při spuštění zátěžového testu spustí testovací moduly azure Load Testing testovací skript Apache JMeter. Během zátěžového testu ukládá Apache JMeter podrobné protokolování do protokolů pracovních uzlů. Tyto protokoly pracovního procesu JMeter si můžete stáhnout pro každé testovací spuštění na webu Azure Portal. Zátěžové testování Azure generuje protokol pracovních procesů pro každou instanci testovacího modulu.

Poznámka:

Azure Load Testing zaznamenává pouze zprávy protokolu s protokoly WARN nebo ERROR úrovní v protokolech pracovního procesu.

Pokud je například problém se skriptem JMeter, stav zátěžového testu se nezdařil. V protokolech pracovního procesu můžete najít další informace o příčině problému.

Chcete-li stáhnout protokoly pracovních procesů pro testovací běh zátěžového testování Azure, postupujte takto:

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

  2. Výběrem možnosti Testy zobrazíte seznam testů a pak ze seznamu vyberete zátěžový test.

  3. V seznamu testovacích běhů vyberte testovací běh, abyste zobrazili řídicí panel zátěžového testu.

  4. Na řídicím panelu vyberte Stáhnout a pak vyberte Protokoly.

    Prohlížeč by teď měl začít stahovat zazipovanou složku, která obsahuje soubor protokolu pracovních uzlů JMeter pro každou instanci testovacího modulu.

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

  5. K extrahování složky a přístupu k souborům protokolu můžete použít jakýkoli nástroj ZIP.

    Soubor worker.log vám může pomoct s diagnostikou původní příčiny neúspěšného zátěžového testu. Na snímku obrazovky vidíte, že test selhal kvůli chybějícímu souboru.

    Screenshot that shows the JMeter log file content.