stress testing guide
Komplexný sprievodca stresovým testovaním pre začiatočníkov:
Zdôraznenie čohokoľvek nad bodom má za následok vážne následky pre ľudí, stroje alebo program. Spôsobuje buď vážne škody, alebo ich úplne rozbije.
Podobne sa v tomto tutoriále naučíme, ako záťažové testovať webové aplikácie spolu s ich účinkom.
Aby sme sa vyhli trvalému poškodeniu vašich aplikácií alebo webových stránok, keď sú namáhané, tj. Sú nadmerne zaťažené, musíme nájsť bod zlomu a následne riešenie, ako sa takýmto podmienkam vyhnúť. Len si pomyslite, aké by to bolo, keď by váš vianočný výpredaj vypadol z nákupného webu. Aká veľká by bola strata?
Nižšie je uvedených niekoľko príkladov skutočných prípadov, keď je mimoriadne dôležité záťažové testovanie aplikácie alebo webu:
linux nájsť rozdiel medzi dvoma súbormi
# 1) Aplikácie alebo webové stránky na komerčné nakupovanie musia podstúpiť stresové testovanie, pretože počas festivalov, výpredajov alebo počas akciových ponúk sa zaťaženie veľmi zvyšuje.
#dva) Finančné aplikácie alebo webové stránky musia vykonať záťažový test, pretože sa zvyšuje zaťaženie, napríklad keď stúpne podiel spoločnosti, veľa ľudí sa prihlási na svoje účty, aby mohli kúpiť alebo predať, webové stránky s online nakupovaním presmerujú „platcov“ na platbu atď.
# 3) Webové alebo e-mailové aplikácie musia byť podrobené záťažovým testom.
# 4) Webové stránky alebo aplikácie, blogy atď. Sociálnych sietí musia byť testované stresom atď.
Čo sa dozviete:
- Čo je stresové testovanie a prečo záťažový test vykonávame?
- Stratégia pre záťažové testovanie
- Stresové testovanie pre mobilné aplikácie
- Rozdiel medzi záťažovým testovaním a stresovým testovaním
- Príklady testovacích prípadov
- 5 najlepších softvérov na testovanie stresu
- Záver
- Odporúčané čítanie
Čo je stresové testovanie a prečo záťažový test vykonávame?
Stresové testovanie je definované ako proces testovania stability hardvéru alebo softvéru pri vysokom zaťažení. Toto testovanie sa vykonáva za účelom nájdenia číselného bodu, kedy sa systém pokazí (z hľadiska počtu požiadaviek používateľov a serverov atď.), A súvisiaceho spracovania chýb.
Počas stresového testovania je testovaná aplikácia (AUT) po stanovenú dobu bombardovaná silným zaťažením, aby sa overil bod zlomu a zistilo sa, ako dobre sa správa chyba.
Príklad: Pri pokuse o kopírovanie súboru s veľkosťou 7 až 8 GB môže program MS Word zobraziť chybové hlásenie „Neodpovedá“.
Word ste bombardovali súborom veľkej veľkosti a taký veľký súbor nemohol spracovať, a preto bol obesený. Aplikácie zo Správcu úloh zvyčajne zabíjame, keď prestanú reagovať, dôvodom je to, že sa aplikácie stresujú a prestanú reagovať.
Nasleduje niekoľko technických dôvodov, ktoré vedú k vykonaniu stresového testovania:
- Na overenie správania systému pri nadmernom alebo nadmernom zaťažení.
- Ak chcete zistiť číselnú hodnotu používateľov, požiadaviek atď., Po ktorých môže dôjsť k poruche systému.
- Chybu vybavte láskavo zobrazením vhodných správ.
- Byť dobre pripravení na také podmienky a prijať preventívne opatrenia, ako je čistenie kódu, čistenie DB atď.
- Overiť manipuláciu s dátami pred rozbitím systému, t. J. Zistiť, či boli dáta vymazané, uložené alebo nie atď.
- Overiť bezpečnostnú hrozbu za takýchto zlomových podmienok atď.
Stratégia pre záťažové testovanie
Toto je typ nefunkčného testovania a toto testovanie sa zvyčajne vykonáva po dokončení funkčného testovania webu alebo aplikácie. Testovacie prípady, spôsob testovania a dokonca aj testovacie nástroje sa môžu občas líšiť.
Nasleduje niekoľko ukazovateľov, ktoré vám pomôžu pri strategizovaní procesu testovania:
- Identifikujte scenáre, funkcie atď., Ku ktorým sa bude mať najväčší prístup a ktoré môžu mať tendenciu narušiť systém. Rovnako ako v prípade finančnej aplikácie, najbežnejšie používanou funkcionalitou je prevod peňazí.
- Identifikujte zaťaženie, ktoré môže systém v daný deň zažiť, teda maximum aj minimum.
- Vytvorte samostatný plán skúšok , scenár, testovací prípad a testovacia sada.
- Na testovanie s inou pamäťou, procesorom atď. Používajte 3–4 rôzne počítačové systémy.
- Používajte 3–4 rôzne prehliadače webových aplikácií s rôznymi verziami.
- V ideálnom prípade nájdite hodnotu pod bodom prerušenia, v bode zlomu a hodnotu za bodom prerušenia (keď systém nebude vôbec reagovať), vytvorte okolo nich testovacie lôžko a údaje.
- V prípade webových aplikácií vyskúšajte tiež záťažový test s pomalou sieťou.
- Neskočte na záver testov iba v jednom alebo dvoch kolách, vykonajte rovnaké testy najmenej 5 kôl a potom urobte záver o svojich zisteniach.
- Nájdite ideálny čas odozvy webového servera a aký je čas v bode zlomu.
- Nájdite chovanie aplikácie v bode zlomu v rôznych bodoch aplikácie, napríklad pri jednoduchom spustení aplikácie, prihlásení, vykonaní akcie po prihlásení atď.
Stresové testovanie pre mobilné aplikácie
Stresové testovanie natívnych mobilných aplikácií sa trochu líši od testovania webových aplikácií. V natívnych aplikáciách sa záťažový test pre bežne používané obrazovky vykonáva pridaním obrovských údajov.
Nasleduje niekoľko overení, ktoré sa vykonávajú v rámci tohto testovania natívnych mobilných aplikácií:
najlepšie miesto na pozeranie anime online zadarmo
- Aplikácia sa nezrúti, keď sa zobrazia obrovské údaje. Rovnako ako v prípade e-mailovej aplikácie, približne 4 až 5 lakhs prijatých e-mailových kariet, v prípade nákupných aplikácií, rovnaké množstvo kartičiek s položkami atď.
- Posúvanie je bez závad a aplikácia sa pri posúvaní nahor alebo nadol nezastaví.
- Používateľ by mal byť schopný zobraziť podrobnosti karty alebo vykonať na karte nejaké akcie z veľkého zoznamu.
- Posielanie aktualizácií z aplikácie na server, ako napríklad označovanie položiek ako „obľúbených položiek“, pridávanie položiek do nákupného košíka atď.
- Skúste aplikáciu načítať s obrovskými dátami v sieti 2G. Ak aplikácia zamrzne alebo zlyhá, mala by sa zobraziť príslušná správa.
- Vyskúšajte scenár typu end-to-end, keď sú k dispozícii obrovské dáta a pomalá sieť 2G atď.
Vaša stratégia testovania na mobilných aplikáciách by mala byť nasledujúca:
- Identifikujte obrazovky, ktoré obsahujú karty, obrázky atď., Aby ste na tieto obrazovky zacielili veľké množstvo údajov.
- Podobne identifikujte funkcie, ktoré sa budú najčastejšie používať.
- Pri vytváraní testovacieho lôžka skúste používať telefóny strednej a nižšej triedy.
- Skúste testovať súčasne na paralelných zariadeniach.
- Vyhnite sa tomuto testovaniu na emulátore a simulátoroch.
- Vyvarujte sa testovaniu na pripojeniach Wi-Fi, pretože sú silné.
- Skúste vykonať aspoň jeden záťažový test v teréne atď.
Rozdiel medzi záťažovým testovaním a stresovým testovaním
S.No. | Stresové testovanie | Testovanie záťaže |
---|---|---|
1 | Toto testovanie sa vykonáva s cieľom zistiť bod zlomu systému. | Toto testovanie sa vykonáva na overenie výkonu systému pri očakávanom zaťažení. |
dva | Toto testovanie sa vykonáva s cieľom zistiť, či sa systém bude správať podľa očakávania, ak zaťaženie prekročí normálny limit. | Toto testovanie sa vykonáva s cieľom skontrolovať čas odozvy servera na očakávané špecifické zaťaženie. |
3 | V tomto teste sa tiež overuje spracovanie chýb. | Riešenie chýb nie je intenzívne testované. |
4 | Takisto sa kontrolujú bezpečnostné hrozby, úniky pamäte atď. | Takéto testovanie nie je povinné. |
5 | Kontroluje stabilitu systémov. | Kontroluje spoľahlivosť systému. |
6 | Testovanie sa vykonáva s viac ako max. možný počet používateľov, požiadaviek atď. | Testovanie sa vykonáva s maximálnym počtom používateľov, požiadaviek atď. |
Stresové testovanie vs Testovanie záťaže
Príklady testovacích prípadov
Testovacie prípady, ktoré pre svoje testovanie vytvoríte, budú závisieť od aplikácie a jej požiadaviek. Pred vytvorením testovacích prípadov sa uistite, že poznáte oblasti zamerania, t. J. Funkcie, ktoré sa pri nadmernom zaťažení budú pravdepodobne lámať.
Nasleduje niekoľko príkladov testovacích prípadov, ktoré môžete zahrnúť do testovania:
- Overte, či sa zobrazí správne chybové hlásenie, keď systém dosiahne bod zlomu, t. J. Prekročí maximálny počet. povolených používateľov alebo požiadaviek.
- Vo vyššie uvedenom testovacom prípade skontrolujte rôzne kombinácie pamäte RAM, procesora a siete atď.
- Overte si, či systém funguje podľa očakávania, keď maximum č. používateľov alebo požiadaviek. Skontrolujte tiež vyššie uvedený testovací prípad, či neobsahujú rôzne kombinácie pamäte RAM, procesora a siete atď.
- Overte, či je viac ako povolené č. používateľov alebo požiadaviek vykonáva rovnakú operáciu (napríklad kupuje rovnaké položky z webovej stránky o nakupovaní alebo uskutočňuje prevod peňazí atď.) a ak systém prestane reagovať, zobrazí sa o dátach príslušné chybové hlásenie (neuložené? - záleží na implementácia).
- Skontrolujte, či nie je viac ako povolené č. používateľov alebo požiadaviek vykonáva rôzne operácie (napríklad jeden používateľ sa prihlasuje, jeden používateľ spúšťa aplikáciu alebo webový odkaz, jeden používateľ vyberá produkt atď.) a ak systém prestane reagovať, zobrazí sa príslušné chybové hlásenie o údajoch (neuložené? - závisí od implementácie).
- Overte, či je čas odozvy pre používateľov alebo požiadavky bodu zlomu v hodnote prijatia.
- Ak je sieť veľmi pomalá, výkon aplikácie alebo webu overte. Pre stav „časový limit“ by sa mala zobraziť správna chybová správa.
- Overte všetky vyššie uvedené testovacie prípady pre server, na ktorom je spustených viac ako jedna aplikácia, aby ste zistili, či je ovplyvnená druhá aplikácia atď.
Pred vykonaním testov sa uistite, že:
- Všetky funkčné poruchy testovanej aplikácie sú opravené a overené.
- Kompletný systém typu end-to-end je pripravený a je testovaná integrácia.
- Neuskutočňujú sa žiadne nové registrácie kódu, ktoré by ovplyvnili testovanie.
- Ostatné tímy sú informované o vašom harmonograme testovania.
- Záložné systémy sa vytvárajú pre prípad vážnych problémov.
5 najlepších softvérov na testovanie stresu
Ak sa stresové testovanie vykonáva ručne, je to tiež veľmi komplikovaná a namáhavá práca. Tiež vám nemusí priniesť očakávané výsledky.
Automatizačné nástroje vám môžu poskytnúť očakávané výsledky a je pomerne ľahké pomocou nich vytvoriť požadované testovacie zariadenie. Môže sa stať, že nástroje, ktoré používate na bežné testovanie funkčnosti, nemusia stačiť na záťažové testovanie.
Preto je na vás a vašom tíme, aby ste sa rozhodli, či chcú samostatný nástroj výlučne na toto testovanie. Pre ostatných je tiež prospešné, že sadu prevádzkujete v noci, aby im nebránila práca. Pomocou automatizačných nástrojov môžete naplánovať spustenie balíka v noci a výsledky budú pripravené na ďalší deň.
Nasleduje zoznam najviac odporúčaných nástrojov:
# 1) Load Runner:
LoadRunner je nástroj navrhnutý spoločnosťou HP na testovanie záťaže, ale dá sa použiť aj na záťažové testy.
Na vytváranie používateľov a požiadaviek na záťažové a záťažové testovanie používa VuGen, tj. Virtual User Generator. Tento nástroj má dobré správy o analýze, ktoré vám môžu pomôcť nakresliť výsledky vo forme grafov, tabuliek atď.
# 2) Neoload:
Neoload je platený nástroj, ktorý je užitočný pri testovaní webových a mobilných aplikácií.
Môže simulovať viac ako 1 000 používateľov, aby overili výkon systému a našli čas odozvy servera. Integruje sa tiež s cloudom pre záťažové aj záťažové testovanie. Poskytuje dobrú škálovateľnosť a veľmi ľahko sa používa.
# 3) JMeter:
JMeter je nástroj s otvoreným zdrojom, ktorý pracuje s verziami JDK 5 a novšími. Tento nástroj sa zameriava predovšetkým na testovanie webových aplikácií. Môže sa tiež použiť na testovanie pripojení k databáze LDAP, FTP, JDBC atď.
# 4) Brúska:
Grinder je nástroj s otvoreným zdrojovým kódom a založený na prostredí Java, ktorý sa používa na záťažové a záťažové testovanie.
Parametrizáciu je možné vykonať dynamicky, zatiaľ čo prebiehajú testy. Má dobré správy a tvrdenia, ktoré vám pomôžu lepšie analyzovať výsledky. Má konzolu, ktorú je možné použiť ako IDE na vytváranie a úpravy testov a agentov na vytvorenie záťaže na účely testovania.
# 5) WebLoad:
Webload nástroj má bezplatné aj platené vydanie. Toto bezplatné vydanie umožňuje vytvoriť až 50 používateľov.
Tento nástroj podporuje kontrolu stresu na webe aj v mobilných aplikáciách. Podporuje rôzne protokoly ako HTTP, HTTPS, PUSH, AJAX, HTML5, SOAP atď. Má IDE, konzolu na generovanie načítania, analytický panel a integrácie (na integráciu s Jenkinsom, nástrojmi APM atď.).
Záver
Stresové testovanie sa úplne zameriava na testovanie systému v podmienkach extrémneho zaťaženia, aby sa zistil jeho zlomový bod a zistilo sa, či sa zobrazia príslušné správy, keď systém nereaguje. Pri testovaní zdôrazňuje pamäť, procesor atď. A kontroluje, ako dobre sa zotavujú.
Stresové testovanie je typ nefunkčného testovania a zvyčajne sa vykonáva po funkčnom testovaní. Ak existuje požiadavka aj na testovanie záťaže, potom sa toto testovanie môže vykonať ako extrémny prípad testovania záťaže. Rovnaký automatizačný nástroj sa dá v 90% prípadov použiť na záťažové aj záťažové testovanie.
Dúfam, že by ste získali vynikajúci prehľad o koncepte stresového testovania !!
Odporúčané čítanie
- Testovanie záťaže s výukovými programami HP LoadRunner
- Výkonové testovanie vs záťažové testovanie vs záťažové testovanie (rozdiel)
- Load Testing Kompletný sprievodca pre začiatočníkov
- Najlepšie nástroje na testovanie softvéru 2021 (QA Test Automation Tools)
- Alfa testovanie a beta testovanie (kompletný sprievodca)
- Sprievodca pre začiatočníkov k testovaniu penetrácie webových aplikácií
- Testovanie záťaže, stresu a výkonu webových aplikácií pomocou WAPT
- Funkčné testovanie vs. Nefunkčné testovanie