what is endurance testing software testing
Úvod do testování odolnosti softwaru:
V tomto článku podrobně probereme a prozkoumáme testování softwaru Endurance.
Zpočátku se nejprve pokusíme pochopit, o čem je testování vytrvalosti přesně a pak prozkoumáme všechny podrobnosti. Jsem si jist, že tento článek bude opravdu dokonalým průvodcem pro ty, kteří jsou v konceptu Endurance Test Concept noví.
Tento článek vám poskytne kompletní přehled o vytrvalostním testování, včetně jeho významu, potřeby, trvání, výhod, výzev a kroků spolu s jednoduchými příklady, které vám umožní dokonale porozumět konceptu.
Co se naučíte:
- Co je testování vytrvalosti?
- Proč testování vytrvalosti?
- Doba trvání testu odolnosti
- Výhody testování odolnosti
- Výzvy v testování vytrvalosti
- Příklad
- Kroky k provedení tohoto testu
- Nástroje pro testování odolnosti
- Závěr
- Doporučené čtení
Co je testování vytrvalosti?
Slovo Endurance znamená „schopnost něčeho vydržet nebo vydržet opotřebení.“ Můžete to jednoduše nazvat jako trvanlivost, trvalá síla nebo dlouhověkost.
Pokud jde o svět softwaru, test vytrvalosti (testování namáčení nebo testování dlouhověkosti nebo testování kapacity) je druh nefunkčního testování, které se provádí za účelem kontroly, zda softwarový systém vydrží při velkém očekávaném zatížení pokračujícím po dlouhou dobu času.
Je to jeden z typů testování výkonu a podtyp zátěžového testování.
Proč testování vytrvalosti?
Hlavním účelem provádění tohoto testování je identifikovat potenciální úniky paměti. Během tohoto testování je tedy využití paměti pečlivě sledováno. Doufám, že jste si vědomi konceptu úniku paměti. Přesto mi dovolte stručně vysvětlit, jaký je vlastně únik paměti pro ty, kteří pro tento termín mohou být noví.
NA únik paměti je selhání softwarového programu při uvolnění vyřazené paměti, které způsobuje zhoršený výkon nebo selhání.
velké analytické nástroje pro data open source
Únik paměti nemusí mít krátkodobý dopad, ale z dlouhodobého hlediska zpomaluje systém, který nezanechává žádnou volnou paměť, a tak nakonec vede ke zhroucení aplikace nebo systému. Únik paměti je problém, který se projeví až po určité době.
Proto k odhalení těchto problémů potřebujeme testování odolnosti.
Je však možné, že s velkým významným zatížením vaše aplikace funguje dobře po určitou dobu, řekněme 1 hodinu. Ale když je vystaven stejnému zatížení nepřetržitě po delší dobu, řekněme 3-4 hodiny, dojde k havárii vaší aplikace kvůli problému se zdroji a nedostatku místa na disku.
Dalším důležitým problémem, který je cílem testování vytrvalostního softwaru identifikovat, je snížení výkonu. Je třeba zajistit, aby propustnost nebo doby odezvy po delším používání byly stejné nebo lepší než na začátku zkoušky.
Problémy s připojením k databázi jsou také identifikovány v testu odolnosti. Pokud není připojení k databázi úspěšně ukončeno, může to mít za následek selhání systému.
Test odolnosti také ověří, zda existuje řádné spojení spojení mezi vrstvami systému, které by jinak způsobilo zablokování určitých modulů systému.
Stručně řečeno, můžeme říci, že cílem testu odolnosti je zjistit, jak se systém chová po dlouhou dobu nepřetržitého používání. Mezi hlavní problémy, které jsou identifikovány jako součást testování vytrvalosti, patří úniky paměti, zhoršení výkonu, problémy s připojením k databázi atd.
Doba trvání testu odolnosti
Pokud se jedná o nonstop provozní projekt 24 * 7, pak by měl v ideálním případě Endurance Test běžet 72 hodin. Důvodem je, že aplikace by měla být natolik schopná, že se bude o víkendech spouštět bez dozoru (protože víkendová podpora je pro organizace nákladná).
Musíme tedy otestovat systém vystavený značnému zatížení po dobu o něco delší než víkend. Jelikož by však běh testu po dobu 72 hodin mohl být příliš těžkopádný, obvykle test odolnosti provádíme po dobu 12 hodin.
Kromě toho neexistuje žádné tvrdé a rychlé pravidlo po celou dobu zkoušky máčením. Závisí to hlavně na faktorech, jako je zapojení klientů, skutečné využití výroby atd. Testy odolnosti občas fungují i rok!
Výhody testování odolnosti
Výhody odvozené z tohoto testování jsou uvedeny níže:
- Zajišťuje vhodnost aplikace.
- Odkrývá ty chyby, které by jinak nemohl najít žádný jiný test výkonu. Například , během hromadného nebo zátěžového testování možná nenajdete problém s únikem paměti.
- Díky ní je aplikace robustní: Identifikuje problémy se snížením výkonu, které by mohly nastat při obrovském nepřetržitém zatížení, a poté oprava těchto problémů činí aplikaci robustnější.
- Vypráví o chování systému při dlouhodobém zatížení. Jinými slovy, kontroluje udržitelnost systému v průběhu času.
- Údaje o výsledcích testu odolnosti mohou být použity pro zákazníka k ověření nebo posílení jeho infrastrukturních potřeb.
Výzvy v testování vytrvalosti
Mezi výzvy spojené s tímto testováním patří:
- Je to velmi časově náročné. Je tedy obtížné provádět testování vytrvalosti v projektu, který má velmi přísné časové osy.
- Nelze provést ručně. Vyžaduje automatizační nástroj a odborníka se znalostmi tohoto nástroje.
- Často je těžké určit, kolik zátěže se vyplatí aplikovat.
- Pokud testovací prostředí není správně izolováno od živého produkčního prostředí, může selhání aplikace nebo sítě v testu odolnosti brzdit celý pracovní systém a způsobit trvalou ztrátu dat / poškození dat.
- Nezpracované výjimky jsou pozorovány zákazníkem.
Příklad
Příkladem, kde je testování odolnosti vyžadováno a může být použito, je aplikace Bankovnictví.
V závěrečné dny banky je aplikace testována, aby se zjistilo, zda systém vydrží při nepřetržitém očekávaném zatížení nebo velkém počtu transakcí dlouho.
Toto je dokonalý příklad vytrvalostního testu.
Kroky k provedení tohoto testu
Níže je uveden postup provádění tohoto testování:
# 1) Vytvořte testovací prostředí:
To zahrnuje zjištění, který hardware, software, databáze (spolu s její velikostí, jak roste s dobou trvání testu) a operační systém je nutný k provedení testu odolnosti.
Zahrnuje také vytvoření týmu pro provádění testů vytrvalosti a přiřazení rolí a odpovědností v týmu. Testovací prostředí by mělo být připraveno před provedením testu a mělo by být správně izolováno od skutečného živého systému.
# 2) Vytvoření testovacího plánu a testovacích scénářů:
Testovací případy by měly být navrženy, zkontrolovány a dokončeny. V tomto kroku by měla být vytvořena také strategie provádění testu.
Měl by být určen bod zlomu aplikace a mělo by být dokončeno, kolik zátěže by bylo na aplikaci kladeno během testu odolnosti.
# 3) Odhad testovacího cyklu:
Zahrnuje analýzu toho, jaké by bylo trvání každé testovací fáze a kolik testovacích cyklů je zapotřebí.
# 4) Analýza rizik:
Toto je velmi důležitý krok v tomto testování. Testovací případy mají prioritu na základě rizikového faktoru.
Níže jsou uvedena rizika a problémy, s nimiž se tester během testu odolnosti může setkat:
- Zůstane test výkonu konzistentní s časem?
- Existují nějaké další drobné problémy, které ještě nebyly odečteny?
- Existuje nějaké vnější rušení, které ještě není řešeno?
# 5) Časový plán testu:
Určete rozpočet, výsledky a časové rámce.
# 6) Provedení testu:
To zahrnuje konečný start testu odolnosti.
# 7) Uzavření testovacího cyklu:
Uzavřete testovací cyklus na základě výstupních kritérií stanovených ve fázi plánování testu. Mohlo by to být založeno na zjištěných vadách, délce testu atd.
Nástroje pro testování odolnosti
Na trhu je k dispozici několik nástrojů.
Níže jsou uvedeny některé z nejpopulárnějších a nejužitečnějších nástrojů Endurance Test:
Závěr
V tomto článku jsme se dozvěděli o tom, co je Endurance Testing? Jak je to třeba udělat? Jeho výhody a nevýhody a různé dostupné nástroje.
Mezi klíčová jídla patří:
- Vytrvalostní testování (testování namáčení nebo testování dlouhověkosti nebo testování kapacity) je typ nefunkčního testování, které se provádí za účelem kontroly, zda softwarový systém vydrží při velkém očekávaném zatížení pokračujícím po dlouhou dobu.
- Jedná se o podmnožinu testování zátěže.
- Mezi hlavní problémy, které jsou identifikovány jako součást tohoto testování, patří úniky paměti, zhoršení výkonu, problémy s připojením k databázi atd.
- Doba trvání vytrvalostního testu závisí na obchodních, projektových a klientských požadavcích. Může trvat 5-10 hodin nebo několik dní nebo měsíc nebo někdy dokonce rok.
- Díky ní je aplikace robustnější a připravuje ji na udržení při nepřetržitém velkém zatížení.
- Jelikož je to velmi časově náročné, je třeba se vyhnout ručnímu testování vytrvalosti. Je to většinou automatizované.
- Mělo by to začít vytvořením izolovaného testovacího prostředí, poté vytvořením testovacích plánů, odhadem doby trvání testovacích cyklů, analýzou rizika, přípravou plánu testu, provedením testu odolnosti a nakonec testovacím cyklem uzavřít.
- Mezi skvělé nástroje pro test vytrvalosti patří Apache Jmeter, LoadStorm, LoadRunner, LoadUI, Appvance, OpenSTA, WebLoad a IBM Rational Performance Tester.
Další čtení:
- Top 15 Performance Testing Tools of 2018: Load Testing Tools List
- STH Podrobný článek o testování výkonu - s příklady
- 4 tipy na test odolnosti, které potřebujete vědět při provádění tohoto testu prostřednictvím Apache JMeter
Doporučené čtení
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Úloha pomocníka QA při testování softwaru
- Testování zátěže s výukovými programy HP LoadRunner
- Kurz testování softwaru: Ke kterému institutu pro testování softwaru bych se měl připojit?
- Výběr testování softwaru jako vaší kariéry
- Práce na volné noze se softwarem pro testování technického obsahu Writer
- Některé zajímavé otázky týkající se testování softwaru
- Zpětná vazba a recenze kurzu testování softwaru