LoadRunner: Spoznaj nástroj na záťažové a výkonnostné testovanie aplikácií

LoadRunner, vyvinutý spoločnosťou Micro Focus (pôvodne Mercury Interactive, neskôr HP), je už dlhé roky jedným z najpoužívanejších nástrojov na testovanie výkonu a záťažové testovanie aplikácií. Pomáha vývojárom, testerom aj architektom odhaliť úzke miesta v systémoch ešte predtým, ako aplikácia príde do produkcie.

Tím IT špecialistov analyzuje záťažové a výkonnostné testovanie aplikácií v nástroji LoadRunner na vizuálnom dashboarde v serverovni.
Záťažové testovanie aplikácií v LoadRunneri v reálnom prostredí tímu

V článku sa dozvieš:

    LoadRunner je odpoveďou na potrebu preveriť softvér aj v hraničných podmienkach. V dynamickom prostredí vývoja nestačí overiť len samotnú funkcionalitu – rovnako zásadné je zistiť, ako sa systém správa pri intenzívnom používaní, pri vysokom počte požiadaviek či pri neštandardnej záťaži. Práve na tento účel slúžia nástroje z oblasti testovania odozvy a zaťaženia, kde LoadRunner patrí medzi najpokročilejšie riešenia na trhu.

    Čo je LoadRunner

    LoadRunner je profesionálny nástroj na simuláciu reálneho správania používateľov a meranie odozvy aplikácie, systému alebo infraštruktúry. Umožňuje simulovať stovky až tisíce virtuálnych používateľov, ktorí vykonávajú definované akcie v aplikácii, a zároveň zaznamenáva metriky ako odozvový čas, priepustnosť, využitie CPU, pamäte či siete.

    Hlavným cieľom LoadRunnera je odpovedať na otázky:

    • Ako sa aplikácia správa pri rôznych úrovniach záťaže?
    • Kde sa nachádzajú úzke miesta, ktoré obmedzujú výkon?
    • Koľko používateľov zvládne systém obslúžiť bez poklesu výkonu?

    História a vývoj

    LoadRunner má dlhú históriu. Prvá verzia vznikla už začiatkom 90. rokov, keď sa ešte aplikácie testovali najmä v lokálnych sieťach a webové systémy neboli dominantné. V tom čase bol LoadRunner jedným z prvých nástrojov, ktoré dokázali simulovať viacerých používateľov a poskytnúť reálne metriky výkonu.

    Vieš, že…

    …v roku 2006 kúpil Mercury Interactive spoločnosť Hewlett-Packard (HP), čím LoadRunner získal globálnu podporu a rozšírenie a v roku 2016 prešiel LoadRunner do portfólia Micro Focus, kde sa aktívne vyvíja dodnes?

    V priebehu rokov prešiel výraznými zmenami:

    • Podpora viacerých protokolov (HTTP/HTTPS, SOAP, REST, FTP, Citrix, Oracle, SAP, a mnoho ďalších).
    • Pridanie možnosti testovania v cloude.
    • Integrácia s CI/CD nástrojmi a modernými DevOps procesmi.

    Kľúčové časti LoadRunnera

    LoadRunner sa skladá z troch hlavných modulov:

    1. Virtual User Generator (VuGen) – nástroj na nahrávanie a úpravu skriptov, ktoré definujú správanie virtuálnych používateľov. Tester tu určuje, aké akcie má používateľ vykonať, a skript môže ďalej optimalizovať a parametrizovať.
    2. Controller – centrálna konzola na riadenie testov. Umožňuje nastaviť počet virtuálnych používateľov, záťažové profily a monitorovanie počas testu.
    3. Analysis – modul na analýzu výsledkov testu. Poskytuje grafy, štatistiky a prehľady, ktoré pomáhajú odhaliť úzke miesta a problémy.

    Tieto tri moduly tvoria spolu komplexné riešenie, ktoré pokrýva celý cyklus testovania výkonu – od prípravy scenára, cez spustenie testu, až po detailnú analýzu.

    Prečo je LoadRunner populárny

    LoadRunner sa stal štandardom vo svete performance testingu z viacerých dôvodov, napríklad:

    • Podpora širokej škály protokolov – väčšina konkurenčných nástrojov podporuje najmä HTTP/HTTPS, kým LoadRunner zvládne aj špecifické enterprise protokoly.
    • Realistická simulácia – virtuálni používatelia sa správajú veľmi podobne ako skutoční ľudia, čo zvyšuje presnosť výsledkov.
    • Integrované monitorovanie – počas testu možno sledovať nielen odozvu aplikácie, ale aj výkon serverov a infraštruktúry.
    • Škálovateľnosť – testy môžu simulovať od desiatok až po státisíce používateľov.
    • Bohatá analytika – výsledky testov sú prehľadne spracované a ponúkajú hlboké technické detaily.

    4 min.It testetri mladý muž a žena pozerajú do monitora

    Manažment kvality pri vývoji a testovaní softvéru

    V článku sa dozvieš ako súvisia Quality Management manažment, riadenie kvality a jeho jednotlivé procesy s testovaním softvéru.

    Inštalácia a základné nastavenie LoadRunnera

    Inštalácia LoadRunnera potrebuje prejsť niekoľkými krokmi od získania inštalačných súborov až po nastavenie prostredia na spustenie testov.

    1. Získanie LoadRunnera

    Micro Focus ponúka LoadRunner Professional ako komerčný produkt, ale existuje aj bezplatná komunitná edícia s limitom 50 virtuálnych používateľov. Túto verziu si môžeš stiahnuť priamo z oficiálnej stránky Micro Focus po registrácii.

    2. Požiadavky na systém

    Pred inštaláciou sa uisti, že tvoj počítač alebo server spĺňa minimálne požiadavky:

    • operačný systém: Windows 10/11 alebo Windows Server 2016+,
    • CPU: minimálne 4 jadrá (odporúča sa viac),
    • RAM: aspoň 8 GB (pre väčšie testy 16+ GB),
    • voľné miesto na disku: minimálne 10 GB,
    • sieťové pripojenie: stabilné a rýchle, najmä ak plánuješ testy vo veľkej škále.

    3. Inštalácia

    Po stiahnutí spusti inštalátor a vyber moduly, ktoré chceš nainštalovať. Najčastejšie sa inštaluje:

    • Virtual User Generator (VuGen) – na nahrávanie a úpravu skriptov,
    • Controller – na riadenie testov,
    • Analysis – na vyhodnocovanie výsledkov.

    Ak testy spúšťaš na viacerých počítačoch, je možné nainštalovať jednotlivé komponenty samostatne (napríklad jeden PC iba s Controllerom, iný s VuGenom).

    Príprava prvého testu v LoadRunneri

    V nasledujúci piatich bodoch si rozoberieme, ako postupovať pri príprave prvého testu v LoadRunneri.

    1. Nahranie skriptu vo VuGene

    Po spustení VuGenu vyber protokol, ktorý tvoja aplikácia používa (napríklad Web –HTTP/HTML). Potom klikni na „Record“ a spusti svoju aplikáciu alebo web. VuGen bude zaznamenávať tvoje akcie – kliknutia, vyplnenie formulárov, navigáciu.

    Príklad:

    • Otvor webovú stránku obchodu.
    • Vyhľadaj produkt „Notebook“.
    • Pridaj produkt do košíka.
    • Prejdi k objednávke.

    VuGen vytvorí skript, ktorý tieto kroky replikuje.

    2. Parametrizácia

    Aby test nebol vždy úplne rovnaký, LoadRunner umožňuje parametrizáciu, teda použitie dynamických hodnôt. Napríklad namiesto toho, aby každý virtuálny používateľ hľadal „Notebook“, môžeš použiť zoznam produktov z CSV súboru.

    3. Nastavenie Controlleru

    V Controlleri sa definuje testovací scenár. Určíš, koľko virtuálnych používateľov sa spustí, akým tempom budú pribúdať a ako dlho sa bude test vykonávať.

    Príklad nastavenia:

    • počet VU: 100,
    • ramp-up: 10 používateľov každých 30 sekúnd,
    • celkový čas testu: 30 minút.

    4. Spustenie testu a monitorovanie

    Po spustení testu môžeš sledovať metriky v reálnom čase:

    • priemerný čas odozvy,
    • počet chýb,
    • využitie CPU, RAM, siete na serveri.

    Tieto údaje sú kľúčové na identifikáciu problémov ešte počas behu testu.

    18 min.safety, security testing

    Testovanie bezpečnosti: Safety & security testing

    V tomto článku sa dozvieš, čo pojmy Safety testing a Security testing predstavujú, ako sú prepojené a ako ich môžeš využiť na zabezpečenie svojich aplikácií.

    5. Analýza výsledkov

    Po skončení testu otvor modul Analysis. Tu získaš detailné grafy a tabuľky:

    • distribúcia časov odozvy,
    • počet obslúžených požiadaviek,
    • vzťah medzi záťažou a výkonom,
    • identifikované chyby.

    Výsledky môžeš exportovať vo formáte HTML alebo PDF a zdieľať s tímom.

    Architektúra nástroja LoadRunner

    LoadRunner má modulárnu architektúru, ktorá je navrhnutá tak, aby dokázala simulovať tisíce používateľov, zbierať údaje o výkone a poskytovať detailné analýzy v reálnom čase. Architektúra sa skladá z troch hlavných komponentov a niekoľkých podporných častí.

    Hlavné komponenty LoadRunnera

    LoadRunner sa skladá z troch základných nástrojov, ktoré spolupracujú pri tvorbe, riadení a spúšťaní záťažových testov:

    1. VuGen (Virtual User Generator)

    VuGen je nástroj, v ktorom sa nahrávajú a upravujú testovacie skripty. Tieto skripty predstavujú akcie, ktoré budú simulovať virtuálni používatelia (Vusers).

    • VuGen zaznamenáva interakciu medzi klientom a serverom na úrovni protokolov (HTTP, WebSocket, SAP, Oracle, atď.).
    • Po nahratí sa zaznamenané kroky prevedú do kódu (najčastejšie v jazyku C), ktorý možno ďalej parametrizovať a optimalizovať.
    • VuGen umožňuje pridať logiku, koreláciu dynamických hodnôt a rôzne podmienky pre realistické správanie používateľov.

    2. Controller

    Controller je centrálny mozog testovania.

    • Riadi, koľko virtuálnych používateľov sa spustí, kedy a akým tempom (ramp-up).
    • Umožňuje nastaviť dĺžku testu, typ záťaže (load, stress, endurance) a pridávať skripty pre rôzne scenáre.
    • Počas testu zobrazuje grafy a živé metriky (CPU, pamäť, odozva, priepustnosť).
    • Vie komunikovať s monitorovacími agentmi na serveroch, aby zbieral dáta priamo zo systémov.

    3. Load Generators

    Load Generators sú servery alebo virtuálne stroje, na ktorých bežia skripty z Controlleru.

    • Každý Load Generator simuluje určitý počet používateľov.
    • Umožňuje horizontálne škálovanie – ak test vyžaduje viac používateľov, pridajú sa ďalšie Load Generators.
    • Môžu bežať lokálne, v cloude alebo na vzdialených serveroch.
    • Optimalizujú rozloženie záťaže, aby simulácia bola čo najvernejšia realite.

    17 min.Robot Framework je open-source tool

    Robot Framework: obľúbený nástroj na automatizované testovanie

    V článku ti popíšeme čo je to Robot Framework, na čo slúži, aké má funkcie a ako ho môžeš využiť aj ty.

    Podporné komponenty LoadRunnera

    Okrem hlavných nástrojov ponúka LoadRunner aj súbor podporných komponentov, ktoré zabezpečujú zber dát, analýzu výsledkov a spoľahlivú komunikáciu medzi jednotlivými časťami testovacej infraštruktúry:

    Analysis

    • Modul na spracovanie a vizualizáciu dát po ukončení testu.
    • Poskytuje grafy odoziev, priepustnosti, počtu chýb a detailné reporty.
    • Umožňuje porovnávať viac testov a identifikovať úzke miesta výkonu.

    Monitoring Agents

    • Zbierajú dáta o využití CPU, RAM, disku a siete priamo zo serverov počas testu.
    • Umožňujú lepšie identifikovať príčiny problémov.

    MI Listener

    • Sprostredkuje komunikáciu medzi Controllerom a Load Generators, najmä v prípadoch, keď sú Load Generators za firewallom alebo NAT-om.

    Tok dát v architektúre

    Proces záťažového testovania v LoadRunneri prechádza jasne definovaným tokom dát medzi komponentmi:

    1. VuGen – vytvorenie skriptu a jeho uloženie.
    2. Controller – načítanie skriptu, nastavenie scenára a distribúcia úloh na Load Generators.
    3. Load Generators – spúšťajú virtuálnych používateľov, ktorí vykonávajú akcie proti testovanému systému.
    4. Controller – zhromažďuje metriky zo všetkých Load Generators a monitorovacích agentov.
    5. Analysis – po teste spracuje dáta do reportov a grafov.

    Výhody a nevýhody LoadRunnera

    LoadRunner poskytuje pokročilé výhody pre výkonové testovanie, no zároveň prináša technické a prevádzkové obmedzenia, ktoré môžu ovplyvniť jeho nasadenie v praxi.

    Výhody LoadRunnera

    • Podpora mnohých protokolov: LoadRunner zvládne testovanie desiatok rôznych protokolov vrátane HTTP, HTTPS, SOAP, REST, WebSocket, Citrix, SAP, Oracle, FTP, aj databázových protokolov. To znamená, že ho možno použiť na testovanie širokej škály aplikácií od webov až po enterprise systémy.
    • Realistická simulácia používateľov: Skriptovanie na úrovni protokolov umožňuje simulovať správanie používateľov presne tak, ako by komunikovali so serverom. Výsledkom sú presnejšie a konzistentnejšie dáta z testov.
    • Škálovateľnosť: Vďaka Load Generators možno spustiť tisíce virtuálnych používateľov a realisticky otestovať výkon aj veľmi veľkých aplikácií.
    • Pokročilé analytické možnosti: Modul Analysis poskytuje detailné grafy, štatistiky a možnosť porovnávať viac testov. Vie odhaliť úzke miesta výkonu a pomáha optimalizovať aplikáciu.
    • Integrácia s DevOps: LoadRunner sa dá napojiť na CI/CD nástroje ako Jenkins, Azure DevOps alebo Bamboo, čo umožňuje spúšťať výkonnostné testy automaticky pri každom nasadení.
    • Podpora skriptovania a parametrizácie: Testy možno prispôsobiť pomocou skriptovania v jazyku C alebo JavaScript a použiť dynamické hodnoty, čo zvyšuje variabilitu testov.

    Nevýhody LoadRunnera

    • Cena: LoadRunner je komerčný nástroj a patrí medzi drahšie riešenia. Pre menšie tímy alebo startupy môže byť licencia finančne náročná.
    • Komplexnosť: Aj keď ponúka veľa funkcií, práca s ním má strmšiu krivku učenia. Začiatočníci môžu mať problém s pochopením architektúry a skriptovania.
    • Spotreba zdrojov: Pri veľkých testoch môže byť náročný na CPU a RAM, najmä ak beží viac Load Generators na jednom serveri.
    • Závislosť od proprietárneho prostredia: Niektoré funkcie a protokoly sú dostupné iba v komerčných verziách a nie je možné ich rozšíriť pomocou open-source pluginov tak, ako napríklad pri JMetri.
    • Staršie používateľské rozhranie: Aj keď Micro Focus v posledných rokoch LoadRunner modernizoval, niektoré časti rozhrania stále pôsobia zastaralo v porovnaní s novšími cloudovými riešeniami.

    13 min.11 najčastejších chýb pri testovaní softvéru

    11 najbežnejších chýb pri testovaní softvéru a ako im predchádzať

    V tomto článku sa pozrieme na niekoľko najčastejších chýb pri testovaní softvéru a popíšeme, ako im predchádzať.

    Najlepšie postupy pri práci s LoadRunnerom

    Z LoadRunnera vyťažíš maximum, ak sa budeš držať niekoľkých osvedčených praktík:

    Začni malými testami

    Predtým než spustíš tisíce virtuálnych používateľov, otestuj menší počet. Overíš si, či skripty fungujú správne, či sa zaznamenávajú metriky a či sú výsledky konzistentné.

    Optimalizuj skripty

    Každý skript, ktorý generuje zbytočný traffic alebo obsahuje chyby, môže ovplyvniť výsledok testu. Odporúča sa pravidelne čistiť a parametrizovať skripty, aby simulovali reálne scenáre.

    Používaj monitorovanie serverov

    Testovanie bez sledovania stavu serverov ti síce ukáže, že niečo je pomalé, ale nepovie prečo. LoadRunner sa vie integrovať so server monitoring nástrojmi, aby si vedel, či je problém v CPU, pamäti, databáze alebo sieti.

    Simuluj realistické podmienky

    Nejde len o počet používateľov, ale aj o spôsob ich správania. Pridaj náhodné čakania (think time), rôzne scenáre, a simuluj rozličné sieťové podmienky.

    Analyzuj výsledky po každom teste

    Nehľadaj iba priemerné hodnoty. Sleduj maximá, minimá a odchýlky. Tie často odhalia problémy, ktoré sa v priemeroch stratia.

    Zabezpeč opakovateľnosť testov

    Ak chceš porovnávať výsledky, testy musia prebiehať v rovnakých podmienkach. Rovnaká verzia kódu, rovnaké testovacie prostredie, rovnaké vstupné dáta.

    Porovnanie LoadRunnera s jeho alternatívami

    Pri výbere nástroja na výkonové testovanie je kľúčové porozumieť rozdielom v architektúre, možnostiach skriptovania a škálovaní, ktoré odlišujú LoadRunner od jeho open-source aj komerčných alternatív.

    LoadRunner

    Komplexný komerčný nástroj na záťažové a výkonnostné testovanie od spoločnosti Micro Focus.

    Výhody:

    • Podpora veľkého množstva protokolov vrátane HTTP, WebSockets, Citrix, SAP, Oracle, databáz a ďalších.
    • Pokročilé možnosti skriptovania a parametrizácie scenárov.
    • Silné analytické moduly s detailnými reportmi.
    • Možnosť simulácie veľkých testov s desiatkami až stovkami tisíc virtuálnych používateľov.
    • Integrácia s CI/CD a monitorovacími nástrojmi.

    Nevýhody:

    • Licencovanie je drahé, najmä pri veľkých testoch.
    • Vyššia náročnosť na zaškolenie tímu.
    • Zložitejšia konfigurácia v porovnaní s open source nástrojmi.

    Apache JMeter

    Open source Java aplikácia s GUI aj CLI režimom.

    Výhody:

    • Bezplatný nástroj s veľkou komunitou.
    • Podpora mnohých protokolov (HTTP, FTP, JDBC, SOAP, REST).
    • Bohatá ponuka pluginov na rozšírenie funkcionality.
    • Možnosť vizuálneho návrhu testov.

    Nevýhody:

    • Vyššia spotreba pamäte pri veľkých testoch.
    • Menej presná simulácia veľmi vysokých záťaží v porovnaní s LoadRunnerom.
    • GUI nie je moderné a môže byť pomalé pri veľkých scenároch.

    Gatling

    Nástroj postavený na jazyku Scala, primárne CLI.

    Výhody:

    • Nízka spotreba pamäte a vysoká efektivita pri veľkých testoch.
    • Čitateľný DSL zápis testov v Scale.
    • Dobrá integrácia s CI/CD.

    Nevýhody:

    • Vyžaduje znalosť programovania v Scale.
    • Menej vizuálnych nástrojov na návrh testov.
    • Menšia komunita ako JMeter alebo LoadRunner.

    k6

    CLI nástroj s testami písanými v JavaScripte.

    Výhody:

    • Jednoduchý zápis testov v JavaScripte, vhodný pre vývojárov.
    • Nízke nároky na výkon.
    • Skvelá integrácia s Grafanou a Prometheom.
    • Cloud verzia s extra funkciami.

    Nevýhody:

    • Menej vstavaných protokolov, najmä mimo HTTP/HTTPS.
    • Bez GUI, všetko prebieha cez kód.
    • Niektoré pokročilé funkcie sú len v platenej verzii.

    Praktické tipy, kedy sa ti ktorý nástroj oplatí použiť:

    • LoadRunner – ideálny pre veľké podnikové projekty, ktoré potrebujú podporu širokej škály protokolov a veľmi presnú simuláciu záťaže.
    • JMeter – vhodný pre tímy, ktoré hľadajú flexibilné a bezplatné riešenie s množstvom pluginov.
    • Gatling – výborný pre tímy, ktoré chcú efektívny výkon a majú skúsenosti so Scalou.
    • k6 – skvelý pre vývojárov, ktorí chcú písať jednoduché skripty v JavaScripte a integrovať testovanie do moderného DevOps prostredia.

    Záver

    LoadRunner patrí medzi najkomplexnejšie a najvýkonnejšie nástroje na záťažové a výkonnostné testovanie, ktoré sú dnes na trhu dostupné. Vyniká predovšetkým širokou podporou protokolov, možnosťou simulácie stoviek tisíc používateľov a pokročilými analytickými funkciami. Pre veľké organizácie, ktoré potrebujú detailne overiť výkon svojich aplikácií pred nasadením do produkcie, predstavuje LoadRunner veľmi silnú voľbu.

    Na druhej strane je potrebné počítať s vyššou cenou licencie a zložitejším procesom zaškolenia tímu. Pre menšie tímy alebo projekty, kde nie je potrebná podpora špecifických protokolov a masívnej záťaže, môžu byť vhodnejšie open source alternatívy ako JMeter, Gatling alebo k6.

    Pri výbere nástroja zohľadni nielen aktuálne potreby, ale aj dlhodobú stratégiu testovania a integrácie s ostatnými procesmi vo firme. Ak sa správne nasadí a využije, LoadRunner dokáže výrazne prispieť k zlepšeniu stability, výkonu a spoľahlivosti softvéru, čo v konečnom dôsledku zvyšuje spokojnosť koncových používateľov a minimalizuje riziko výpadkov po nasadení do produkcie.

    O autorovi

    Michaela Kojnoková

    Agile Test Engineer

    Po štúdiu informatiky na ŽU a TUKE som sa najviac ponorila do oblasti automatizácie testovania. Okrem toho sa venujem tvorbe webov, databázam, dátovej analytike, umelej inteligencii a strojovému učeniu. Mám rada cestovanie, šport a najviac si užívam čas strávený v prírode s mojimi blízkymi. LinkedIn

    Daj nám o sebe vedieť