Výukový program na testovanie spoľahlivosti: Čo je, Metódy, Nástroje, Príklad

Obsah:

Anonim

Testovanie spoľahlivosti

Reliability Testing je proces testovania softvéru, ktorý kontroluje, či softvér dokáže vykonať bezporuchovú operáciu po stanovenú dobu v konkrétnom prostredí. Účelom testovania spoľahlivosti je zabezpečiť, aby bol softvérový produkt bez chýb a dostatočne spoľahlivý na svoj očakávaný účel.

Spoľahlivosť znamená „dosiahnuť to isté“, inými slovami, slovo „spoľahlivý“ znamená, že niečo je spoľahlivé a že prinesie zakaždým rovnaký výsledok. To isté platí pre testovanie spoľahlivosti.

V tomto návode sa naučíte

  • Čo je to testovanie spoľahlivosti?
  • Príklad testovania spoľahlivosti
  • Faktory ovplyvňujúce spoľahlivosť softvéru
  • Prečo robiť testy spoľahlivosti
  • Druhy testovania spoľahlivosti
  • Ako to urobiť Testovanie spoľahlivosti
  • Príklad metód na testovanie spoľahlivosti
  • Nástroje na testovanie spoľahlivosti

Príklad testovania spoľahlivosti

Pravdepodobnosť, že počítač v obchode je v prevádzke osem hodín bez zlyhania, je 99%; toto sa označuje ako spoľahlivosť.

Testovanie spoľahlivosti možno rozdeliť do troch segmentov,

  • Modelovanie
  • Meranie
  • Zlepšenie

Nasledujúci vzorec slúži na výpočet pravdepodobnosti poruchy.

Pravdepodobnosť = počet zlyhávajúcich prípadov / celkový počet posudzovaných prípadov

Faktory ovplyvňujúce spoľahlivosť softvéru

  1. Počet porúch v softvéri
  2. Spôsob, akým používatelia prevádzkujú systém
  • Testovanie spoľahlivosti je jedným z kľúčov k lepšej kvalite softvéru. Toto testovanie pomáha odhaliť veľa problémov v dizajne a funkčnosti softvéru.
  • Hlavným účelom testovania spoľahlivosti je skontrolovať, či softvér spĺňa požiadavky na spoľahlivosť zákazníka.
  • Testovanie spoľahlivosti sa uskutoční na niekoľkých úrovniach. Komplexné systémy budú testované na úrovni jednotiek, zostáv, subsystémov a systémov.

Prečo robiť testy spoľahlivosti

Testovanie spoľahlivosti sa vykonáva na testovanie výkonu softvéru za daných podmienok.

Cieľom vykonávania testov spoľahlivosti je,

  1. Nájsť štruktúru opakujúcich sa zlyhaní.
  2. Na zistenie počtu vyskytujúcich sa porúch je určený čas.
  3. Odhaliť hlavnú príčinu zlyhania
  4. Po odstránení chyby vykonať testovanie výkonu rôznych modulov softvérovej aplikácie

Aj po vydaní produktu môžeme minimalizovať možnosť vzniku chýb a tým zvýšiť spoľahlivosť softvéru. Niektoré z nástrojov užitočných na tento účel sú - Analýza trendov, Klasifikácia ortogonálnych defektov a formálne metódy atď.

Druhy testovania spoľahlivosti

Testovanie spoľahlivosti softvéru zahŕňa testovanie funkcií, testovanie záťaže a test regresie

Testovanie funkcií: -

Odporúčané testovanie kontroluje funkcie poskytované softvérom a vykonáva sa v nasledujúcich krokoch: -

  • Každá operácia v softvéri sa vykoná najmenej raz.
  • Interakcia medzi týmito dvoma operáciami je obmedzená.
  • Každá operácia musí byť skontrolovaná na správne vykonanie.

Testovanie záťaže: -

Softvér bude zvyčajne lepšie pracovať na začiatku procesu a potom začne klesať. Vykonáva sa záťažové testovanie na kontrolu výkonu softvéru pri maximálnom pracovnom zaťažení.

Regresný test: -

Regresné testovanie sa používa hlavne na kontrolu toho, či boli zavedené nejaké nové chyby z dôvodu opravy predchádzajúcich chýb. Regresné testovanie sa vykonáva po každej zmene alebo aktualizácii funkcií softvéru a ich funkcií.

Ako to urobiť Testovanie spoľahlivosti

Testovanie spoľahlivosti je nákladné v porovnaní s inými typmi testovania. Pri testovaní spoľahlivosti je teda potrebné správne plánovanie a riadenie. Patria sem testovacie procesy, ktoré sa majú implementovať, údaje pre testovacie prostredie, plán testov, testovacie body atď.

Ak chcete začať s testovaním spoľahlivosti, musí tester neustále sledovať veci,

  • Stanovte si ciele spoľahlivosti
  • Vypracovať prevádzkový profil
  • Plánovanie a vykonávanie testov
  • Na podporu rozhodovania používajte výsledky testov

Ako sme už diskutovali, existujú tri kategórie, v ktorých môžeme vykonávať Testovanie spoľahlivosti - Modelovanie, Meranie a Vylepšenie .

Kľúčové parametre testovania spoľahlivosti sú: -

  • Pravdepodobnosť bezporuchovej prevádzky
  • Dĺžka doby bezporuchovej prevádzky
  • Prostredie, v ktorom sa vykonáva

Krok 1) Modelovanie

Techniku ​​modelovania softvéru možno rozdeliť do dvoch podkategórií:

1. Predikčné modelovanie

2. Modelovanie odhadov

  • Zmysluplné výsledky možno získať uplatnením vhodných modelov.
  • Na zjednodušenie problémov je možné predpokladať a abstrakcie a žiadny model nebude vhodný pre všetky situácie.

    Hlavné rozdiely medzi týmito dvoma modelmi sú: -

Problémy Predikčné modely Odhadové modely
Odkaz na údaje Používa historické údaje Využíva aktuálne údaje z vývoja softvéru.
Pri použití vo vývojovom cykle Spravidla sa vytvorí pred vývojovými alebo testovacími fázami. Zvyčajne sa použije v neskoršej fáze životného cyklu vývoja softvéru.
Časový rámec Bude predpovedať spoľahlivosť v budúcnosti. Bude predpovedať spoľahlivosť pre súčasný alebo budúci čas.

Krok 2) Meranie

Spoľahlivosť softvéru nemožno merať priamo, a preto sa na odhad spoľahlivosti softvéru berú do úvahy ďalšie súvisiace faktory. Súčasné postupy merania spoľahlivosti softvéru sú rozdelené do štyroch kategórií: -

1. Metriky produktu: -

Metriky produktu sú kombináciou 4 typov metrík:

  • Veľkosť softvéru : - Line of Code (LOC) je intuitívny počiatočný prístup k meraniu veľkosti softvéru. V tejto metrike sa počíta iba zdrojový kód a komentáre a ďalšie nespustiteľné vyhlásenia sa nebudú počítať.
  • Metrický bod funkcie : - Funkcia Pont Metric je metóda merania funkčnosti vývoja softvéru. Zváži počet vstupov, výstupov, kmeňových súborov atď. Meria funkčnosť dodávanú používateľovi a je nezávislá od programovacieho jazyka.
  • Zložitosť : - Priamo súvisí so spoľahlivosťou softvéru, takže predstavuje zložitosť. Metrika zameraná na zložitosť je metóda určovania zložitosti riadiacej štruktúry programu zjednodušením kódu do grafického znázornenia.
  • Metriky pokrytia testu : - Je to spôsob odhadu chyby a spoľahlivosti vykonaním kompletného testu softvérových produktov. Spoľahlivosť softvéru znamená, že je to funkcia určujúca, že systém bol úplne overený a otestovaný.

2. Metriky projektového riadenia

  • Vedci si uvedomili, že dobré riadenie môže viesť k lepším produktom.
  • Kvalitný manažment môže dosiahnuť vyššiu spoľahlivosť použitím lepšieho vývojového procesu, procesu riadenia rizík, procesu riadenia konfigurácie atď.

3. Metriky procesu

Kvalita produktu priamo súvisí s procesom. Metrické údaje procesu možno použiť na odhad, sledovanie a zlepšenie spoľahlivosti a kvality softvéru.

4. Metriky porúch a zlyhaní

Metriky porúch a zlyhaní sa používajú hlavne na kontrolu, či je systém úplne bezporuchový. Na dosiahnutie tohto cieľa sa zhromažďujú, sumarizujú a analyzujú typy porúch zistených počas procesu testovania (tj pred dodaním), ako aj zlyhania hlásené používateľmi po dodaní.

Spoľahlivosť softvéru sa meria ako stredná doba medzi poruchami (MTBF) . MTBF sa skladá z

  • Stredná hodnota do zlyhania (MTTF): Je to časový rozdiel medzi dvoma po sebe nasledujúcimi poruchami
  • Stredný čas na opravu (MTTR): Je to čas potrebný na odstránenie poruchy.
MTBF = MTTF + MTTR

Spoľahlivosť dobrého softvéru je číslo od 0 do 1.

Spoľahlivosť sa zvyšuje, keď sa z programu odstránia chyby alebo chyby.

Krok 3) Zlepšenie

Vylepšenie úplne závisí od problémov, ktoré sa vyskytli v aplikácii alebo systéme, alebo od charakteristík softvéru. Podľa zložitosti softvérového modulu sa bude líšiť aj spôsob vylepšenia. Do zlepšenia spoľahlivosti softvéru sú vložené dve hlavné obmedzenia, čas a rozpočet, ktoré obmedzia úsilie.

Príklad metód na testovanie spoľahlivosti

Testovanie spoľahlivosti spočíva v cvičení aplikácie tak, aby boli chyby odhalené a odstránené pred nasadením systému.

Pri testovaní spoľahlivosti sa používajú hlavne tri prístupy

  • Spoľahlivosť pri opätovnom testovaní
  • Spoľahlivosť paralelných formulárov
  • Konzistentnosť rozhodnutí

Ďalej sme sa pokúsili vysvetliť všetky tieto príklady.

Spoľahlivosť pri opätovnom testovaní

Na odhad spoľahlivosti opätovného vykonania testu bude jedna skupina skúšaných vykonávať proces testovania iba s odstupom niekoľkých dní alebo týždňov. Čas by mal byť dostatočne krátky, aby bolo možné posúdiť zručnosti vyšetrovaných v tejto oblasti. Vzťah medzi skóre vyšetrovaného z dvoch rôznych podaní sa odhaduje pomocou štatistickej korelácie. Tento typ spoľahlivosti ukazuje, do akej miery je test schopný produkovať stabilné a konzistentné skóre v priebehu času.

Spoľahlivosť paralelných formulárov

Mnoho skúšok má viac formátov otázok, tieto paralelné formy skúšky poskytujú zabezpečenie. Spoľahlivosť paralelných foriem sa odhaduje administráciou oboch foriem skúšky do rovnakej skupiny skúšaných. Skóre vyšetrených na dvoch testovacích formách sú korelované s cieľom zistiť, ako podobne fungujú tieto dve testovacie formy. Tento odhad spoľahlivosti je mierou toho, ako sa dá očakávať konzistentné skóre skúšaných vo všetkých testovacích formách.

Konzistentnosť rozhodnutí

Po vykonaní Test-Retest Reliability and Parallel Form Reliability dostaneme výsledok testovaných osôb, ktoré vyhoveli alebo zlyhali. Je to spoľahlivosť tohto rozhodnutia o klasifikácii, ktorá sa odhaduje na spoľahlivosť konzistencie rozhodnutia.

Dôležitosť testovania spoľahlivosti

Na zlepšenie výkonu softvérového produktu a procesu je potrebné dôkladné posúdenie spoľahlivosti. Testovanie spoľahlivosti softvéru pomôže softvérovým manažérom a odborníkom vo veľkej miere.

Ak chcete skontrolovať spoľahlivosť softvéru pomocou testovania: -

  1. Mal by sa vykonať dlhší čas veľký počet testovacích prípadov, aby sa zistilo, ako dlho sa softvér vykoná bez poruchy.
  2. Distribúcia testovacích prípadov by mala zodpovedať skutočnému alebo plánovanému prevádzkovému profilu softvéru. Čím častejšie sa vykonáva funkcia softvéru, tým väčšie je percento testovacích prípadov, ktoré by sa mali priradiť k tejto funkcii alebo podmnožine.

Nástroje na testovanie spoľahlivosti

Niektoré z nástrojov na testovanie spoľahlivosti používané pre spoľahlivosť softvéru sú:

1. WEIBULL ++: - Spoľahlivosť analýzy životných údajov

2. RGA: - Analýza rastu spoľahlivosti

3. RCM: - Údržba zameraná na spoľahlivosť

Zhrnutie:

Testovanie spoľahlivosti je dôležitou súčasťou inžinierskeho programu spoľahlivosti. Presnejšie povedané, je to duša inžinierskeho programu spoľahlivosti.

Testy spoľahlivosti sú navyše určené hlavne na odhalenie konkrétnych režimov zlyhania a iných problémov počas testovania softvéru.

V softvérovom inžinierstve možno testovanie spoľahlivosti rozdeliť do troch segmentov,

  • Modelovanie
  • Meranie
  • Zlepšenie

Faktory ovplyvňujúce spoľahlivosť softvéru

  • Počet porúch v softvéri
  • Spôsob, akým používatelia prevádzkujú systém