stress testing guide
Komplexní průvodce zátěžovým testováním pro začátečníky:
Zdůraznění čehokoli nad bod má za následek vážné následky pro člověka, stroj nebo program. Způsobuje vážné škody nebo je zcela rozbije.
Podobně se v tomto tutoriálu naučíme, jak zátěžový test webových aplikací spolu s jeho účinkem.
Aby se zabránilo trvalému poškození vašich aplikací nebo webů, když jsou namáhané, tj. Silně načtené, musíme najít bod zlomu a následně řešení, jak se těmto podmínkám vyhnout. Jen si pomyslete, jaké by to bylo, kdyby váš nákupní web během vánočního prodeje selhal. Kolik by to byla ztráta?
Níže uvádíme některé příklady skutečných případů, kdy je velmi důležité provést zátěžový test aplikace nebo webu:
příklady skriptů prostředí Unix pro začátečníky
# 1) Komerční nákupní aplikace nebo webové stránky musí provádět zátěžové testování, protože během festivalů, výprodejů nebo období speciálních nabídek je zatížení velmi vysoké.
#dva) Finanční aplikace nebo webové stránky potřebují provést zátěžový test, protože se zvyšuje zátěž v době, kdy se zvyšuje podíl společnosti, spousta lidí se přihlašuje ke svým účtům, aby mohli nakupovat nebo prodávat, webové stránky pro online nakupování přesměrovávají na platby „Net-bankery“ atd.
# 3) Webové nebo e-mailové aplikace musí být stresově testovány.
# 4) Weby nebo aplikace sociálních sítí, blogy atd. Je třeba podrobit zátěžovým testům atd.
Co se naučíte:
- Co je zátěžové testování a proč zátěžový test provádíme?
- Strategie pro zátěžové testování
- Stresové testování pro mobilní aplikace
- Rozdíl mezi zátěžovým testováním a zátěžovým testováním
- Ukázkové testovací případy
- 5 Nejlepší software pro testování stresu
- Závěr
- Doporučené čtení
Co je zátěžové testování a proč zátěžový test provádíme?
Stresové testování je definováno jako proces testování stability hardwaru nebo softwaru při vysokém zatížení. Toto testování se provádí za účelem nalezení číselného bodu, kdy se systém rozbije (z hlediska počtu požadavků uživatelů a serveru atd.) A souvisejícího zpracování chyb.
Během zátěžového testování je testovaná aplikace (AUT) po danou dobu bombardována silným zatížením, aby se ověřil bod zlomu a aby se zjistilo, jak dobře se zpracovává chyba.
Příklad: Při pokusu o kopírování souboru o velikosti 7–8 GB může aplikace MS Word zobrazit chybovou zprávu „Neodpovídá“.
Bombardovali jste Word souborem velké velikosti a nemohl tak velký soubor zpracovat a ve výsledku je oběsen. Když přestanou reagovat, aplikace ze Správce úloh obvykle zabijí, důvodem je to, že se aplikace stresují a přestanou reagovat.
Následují některé technické důvody provádění zátěžového testování:
- Ověření chování systému při abnormálním nebo extrémním zatížení.
- Chcete-li zjistit číselnou hodnotu uživatelů, požadavků atd., Po které může dojít k poškození systému.
- Chybu řešte laskavě zobrazením příslušných zpráv.
- Být dobře připraveni na takové podmínky a přijmout preventivní opatření, jako je čištění kódu, čištění DB atd.
- Chcete-li ověřit zpracování dat před rozbitím systému, tj. Zjistit, zda byla data odstraněna, uložena nebo ne atd.
- Ověření bezpečnostní hrozby za takových zlomových podmínek atd.
Strategie pro zátěžové testování
Toto je typ nefunkčního testování a toto testování se obvykle provádí po dokončení funkčního testování webu nebo aplikace. Testovací případy, způsob testování a dokonce i nástroje k testování se mohou občas lišit.
Následuje několik ukazatelů, které vám pomohou strategizovat váš testovací proces:
- Určete scénáře, funkce atd., Ke kterým bude přistupováno nejvíce a které mohou mít tendenci systém rozbít. Stejně jako u finanční aplikace je nejčastěji používanou funkcí převod peněz.
- Určete zatížení, které může systém v daný den zažít, tj. Maximální i minimální.
- Vytvořte samostatný testovací plán , scénář, testovací případ a testovací sada.
- Pro testování s jinou pamětí, procesorem atd. Používejte 3-4 různé počítačové systémy.
- Uživatel 3-4 různé prohlížeče pro webové aplikace s různými verzemi.
- V ideálním případě najděte hodnotu pod zarážkou, v zarážce a hodnotu za zarážkou (když systém vůbec nereaguje), vytvořte kolem nich testovací lože a data.
- V případě webových aplikací zkuste také zátěžový test s pomalou sítí.
- Nepokoušejte se o závěry testů jen v kole nebo dvou, proveďte stejné testy po dobu nejméně 5 kol a poté proveďte závěry o svých závěrech.
- Najděte ideální dobu odezvy webového serveru a jaký je čas v bodě zlomu.
- Najděte chování aplikace v bodě zlomu v různých bodech aplikace, jako když jednoduše spouštíte aplikaci, přihlašujete se, provádíte nějaké akce po přihlášení atd.
Stresové testování pro mobilní aplikace
Stresové testování pro nativní mobilní aplikace se od webových aplikací trochu liší. V nativních aplikacích se zátěžový test provádí pro běžně používané obrazovky přidáním obrovských dat.
Následuje několik ověření, která se provádějí jako součást tohoto testování pro nativní mobilní aplikace:
- Aplikace se nezřítí, když se zobrazí obrovská data. Stejně jako u e-mailové aplikace, přibližně 4 až 5 lakhů přijatých e-mailových karet, u nákupních aplikací, stejné množství karet položek atd.
- Posouvání je bez závad a aplikace při posouvání nahoru nebo dolů nevisí.
- Uživatel by měl být schopen zobrazit podrobnosti o kartě nebo provést nějakou akci na kartě z obrovského seznamu.
- Odesílání aktualizací z aplikace na server, jako je označení položky jako „Oblíbené“, přidání položky do nákupního košíku atd.
- Zkuste aplikaci načíst s velkými daty v síti 2G, když aplikace zamrzne nebo dojde k chybě, měla by zobrazit příslušnou zprávu.
- Vyzkoušejte scénář typu end-to-end, když jsou k dispozici obrovská data a pomalá 2G síť atd.
Vaše strategie testování mobilních aplikací by měla být následující:
- Určete obrazovky, které obsahují karty, obrázky atd., Abyste na tyto obrazovky mohli zacílit obrovská data.
- Podobně identifikujte funkce, které se budou nejčastěji používat.
- Při vytváření testovacího zařízení zkuste použít telefony střední a nižší třídy.
- Zkuste testovat současně na paralelních zařízeních.
- Vyhněte se tomuto testování na emulátoru a simulátorech.
- Vyvarujte se testování připojení Wifi, protože jsou silná.
- Zkuste provést alespoň jeden zátěžový test v terénu atd.
Rozdíl mezi zátěžovým testováním a zátěžovým testováním
Č. | Stresové testování | Zátěžové testování |
---|---|---|
1 | Toto testování se provádí za účelem zjištění bodu zlomu systému. | Toto testování se provádí za účelem ověření výkonu systému při očekávaném zatížení. |
dva | Toto testování se provádí, aby se zjistilo, zda se systém bude chovat podle očekávání, pokud zatížení překročí normální limit. | Toto testování se provádí ke kontrole doby odezvy serveru na očekávané specifické zatížení. |
3 | V tomto testu je také ověřeno zpracování chyb. | Zpracování chyb není intenzivně testováno. |
4 | To také kontroluje bezpečnostní hrozby, úniky paměti atd. | Žádné takové testování není povinné. |
5 | Zkontroluje stabilitu systémů. | Kontroluje spolehlivost systému. |
6 | Testování se provádí s více než max. možný počet uživatelů, požadavků atd. | Testování se provádí s maximálním počtem uživatelů, požadavků atd. |
Zátěžové testování vs. zátěžové testování
Ukázkové testovací případy
Testovací případy, které pro své testování vytvoříte, budou záviset na aplikaci a jejích požadavcích. Před vytvořením testovacích případů se ujistěte, že znáte oblasti ostření, tj. Funkce, které budou mít tendenci se zlomit za podmínek abnormálního zatížení.
Následuje několik ukázkových testovacích případů, které můžete zahrnout do svého testování:
můžete použít jakýkoli VR headset pro PS4
- Ověřte, zda se zobrazí správná chybová zpráva, když systém dosáhne bodu zlomu, tj. Překročí maximální počet. povolených uživatelů nebo požadavků.
- Zkontrolujte výše uvedený testovací případ, zda neobsahuje různé kombinace paměti RAM, procesoru a sítě atd.
- Ověřte, zda systém funguje podle očekávání, když je maximální počet. uživatelů nebo požadavků se zpracovává. Zkontrolujte také výše uvedený testovací případ, zda neobsahuje různé kombinace paměti RAM, procesoru a sítě atd.
- Ověřte, že zatímco více než povolené č. uživatelů nebo požadavků provádí stejnou operaci (jako je nákup stejných položek z nákupního webu nebo převod peněz atd.) a pokud systém přestane odpovídat, zobrazí se příslušná chybová zpráva o datech (neuloženo? - záleží na implementace).
- Zkontrolujte, zda není více než povolené č. uživatelů nebo požadavků provádí různé operace (například jeden uživatel se přihlašuje, jeden uživatel spouští aplikaci nebo webový odkaz, jeden uživatel vybírá produkt atd.) a pokud systém přestane reagovat, zobrazí se příslušná chybová zpráva o datech (neuloženo? - záleží na implementaci).
- Ověřte, zda je doba odezvy pro uživatele nebo požadavky bodu zlomu v hodnotě přijetí.
- Pokud je síť velmi pomalá, ověřte výkon aplikace nebo webu. Měla by se zobrazit správná chybová zpráva pro stav „časový limit“.
- Ověřte všechny výše uvedené testovací případy serveru, na kterém je spuštěna více než jedna aplikace, a zkontrolujte, zda není ovlivněna druhá aplikace atd.
Před provedením testů se ujistěte, že:
- Všechny funkční poruchy testované aplikace jsou opraveny a ověřeny.
- Kompletní systém typu end-to-end je připraven a je testována integrace.
- Žádné nové kontroly kódu, které ovlivní testování, se neprovádějí.
- Ostatní týmy jsou informovány o vašem plánu testování.
- Záložní systémy jsou vytvářeny pro případ vážných problémů.
5 Nejlepší software pro testování stresu
Když se zátěžové testování provádí ručně, je to také velmi komplikovaná a zdlouhavá práce. Také vám nemusí přinést očekávané výsledky.
Automatizační nástroje vám mohou poskytnout očekávané výsledky a je relativně snadné pomocí nich vytvořit požadované testovací zařízení. Může se stát, že nástroje, které používáte pro své běžné funkční testování, nemusí pro zátěžové testování stačit.
Proto je na vás a vašem týmu, abyste se rozhodli, zda chtějí samostatný nástroj výhradně pro toto testování. Pro ostatní je také výhodné, že sadu provozujete v noci, aby jejich práce nebyla omezována. Pomocí automatizačních nástrojů můžete naplánovat běh sady v noci a výsledky budou pro vás připraveny další den.
Následuje seznam nejvíce doporučených nástrojů:
# 1) Load Runner:
LoadRunner je nástroj navržený společností HP pro zátěžové testy, ale lze jej použít i pro zátěžové testy.
K vytváření uživatelů a požadavků na zátěžové a zátěžové testování používá VuGen, tj. Virtual User Generator. Tento nástroj má dobré zprávy o analýze, které mohou pomoci nakreslit výsledky ve formě grafů, grafů atd.
# 2) Neoload:
Neoload je placený nástroj, který je užitečný při testování webových a mobilních aplikací.
Může simulovat více než 1000 uživatelů, aby ověřili výkon systému a zjistili dobu odezvy serveru. Integruje se také s cloudem pro zátěžové i zátěžové testování. Poskytuje dobrou škálovatelnost a jeho použití je velmi snadné.
# 3) JMeter:
JMeter je nástroj s otevřeným zdrojovým kódem, který pracuje s verzemi JDK 5 a vyššími. Tento nástroj se zaměřuje hlavně na testování webových aplikací. Lze jej také použít k testování připojení k databázi LDAP, FTP, JDBC atd.
# 4) Bruska:
Grinder je open source nástroj založený na prostředí Java, který se používá pro zátěžové a zátěžové testování.
Parametrizace může být provedena dynamicky, zatímco probíhají testy. Má dobré zprávy a tvrzení, která vám pomohou lépe analyzovat výsledky. Má konzolu, kterou lze použít jako IDE k vytvoření a úpravě testů a agenti k vytvoření zátěže pro účely testování.
# 5) WebLoad:
Webload nástroj má bezplatné i placené vydání. Tato bezplatná edice umožňuje vytvoření až 50 uživatelů.
Tento nástroj podporuje kontrolu stresu na webu i v mobilních aplikacích. Podporuje různé protokoly jako HTTP, HTTPS, PUSH, AJAX, HTML5, SOAP atd. Má IDE, konzolu pro generování zátěže, řídicí panel analýzy a integraci (pro integraci s Jenkinsem, nástroji APM atd.).
Závěr
Zátěžové testování se zcela zaměřuje na testování systému v podmínkách extrémního zatížení, aby se zjistil jeho bod zlomu a zjistilo se, zda se zobrazují příslušné zprávy, když systém nereaguje. Zdůrazňuje paměť, procesor atd. Během testování a kontroluje, jak dobře se zotavují.
Stresové testování je typ nefunkčního testování a obvykle se provádí po funkčním testování. Pokud existuje také požadavek na zátěžové testování, lze toto testování provést jako extrémní případ zátěžového testování. V 90% případů lze stejný automatizační nástroj použít pro zátěžové i zátěžové testování.
Doufám, že byste získali skvělý vhled do konceptu zátěžového testování !!
Doporučené čtení
- Testování zátěže s výukovými programy HP LoadRunner
- Testování výkonu vs. zátěžové testování vs. zátěžové testování (rozdíl)
- Load Testing Kompletní průvodce pro začátečníky
- Nejlepší nástroje pro testování softwaru 2021 [QA Test Automation Tools]
- Alfa testování a beta testování (kompletní průvodce)
- Průvodce pro začátečníky k testování penetrace webových aplikací
- Testování zatížení, stresu a výkonu webových aplikací pomocí WAPT
- Funkční testování vs. nefunkční testování