Testování ekvivalence
Hodnocení uživatelů: / 0
NejhoršíNejlepší 

Pokud se o nějaké technice může bez obav říct, že jde o nezbytnou základní výbavu testera, pak tou technikou je zcela jistě testování ekvivalence.

 

Testování ekvivalence je vlastně mnohem častěji označováno jako Rozdělení ekvivalence (Equivalence partitioning) a jde o techniku, která úzce souvisí s již uvedenou technikou testování hraničních hodnot. Jejím základem je rozdělení vstupů aplikace do skupin (někdy označovaných jako třídy), pro které je očekávaný stejný výsledek. Jinak řečeno vstupní data, která spadají do stejné skupiny jsou aplikací zpracovávány s použitím stejné logiky a výsledek tohoto zpracování je tedy také stejný.

Předpokládejme, že na vstupu do aplikace je pole pro zadání například doby splatnosti v měsících (třeba v případě kalkulací různých úvěrů). Toto pole umožňuje zadání číselné hodnoty. Aplikace obsahuje logiku, která vloženou hodnotu zpracovává. Dejme tomu, že veškeré hodnoty nad 60 jsou nepovolené, stejně jako hodnoty menší než nula. Hodnoty mezi těmito hranicemi jsou sice povolené, ale hodnoty v intervalu (0,36) jsou zpracovávány jinak než hodnoty v intervalu <36,60>.

Pokud bychom měli ověřit se 100% jistotou, že aplikace funguje správně, pak bychom museli vyzkoušet její chování pro každou hodnotu, jejíž zadání dává smysl. Ovšem v duchu rozdělení ekvivalence (a logiky) si můžeme vstupní hodnoty rozdělit na (snad zcela zřejmé) intervaly, u kterých platí, že hodnoty v daném intervalu jsou zpracovávány stejně.

V tomto případě získáme 4 intervaly. Interval obsahující záporné hodnoty můžeme označit jako nevalidní, protože dané hodnoty nejsou platnými hodnotami pro zpracování. Stejně tak hodnoty v intervalu nad hodnotou 60. Intervaly (0,36) a <36,60> označíme jako validní. Máme tedy dva nevalidní a dva validní intervaly hodnot. Pro jejich otestování použijeme hodnoty, které se nacházejí uvnitř testovaného intervalu. Zde nám tedy vzniknou 4 testy, kterými testujeme správnou funkčnost aplikace při zpracování konkrétního vstupního pole. Pokud na stejný příklad aplikujeme také testování hraničních hodnot, pak celkově získáme 13 testů (při dodržení principů obou technik).

Testování ekvivalence se samozřejmě neomezuje pouze na číselné vstupy. V jednoduchosti se dá říct, že kdykoli je možné najít v aplikaci vstupy, které jsou zpracovávány stejně se stejným výsledkem, můžeme tyto vstupy sloučit do skupiny a aplikovat princip ekvivalence. Ovšem vše musí mít nějakou míru. Využití rozdělení ekvivalence umožňuje redukovat počet testů nutných k otestování aplikace. Ovšem jejich přílišná redukce může sebou nést nebezpečí, že aplikace nebude otestována dostatečně. Rozdělení vstupů do skupin ekvivalence musí vycházet z jistoty, že dané vstupy jsou skutečně zpracovávány stejně.

Jak u testování hraničních hodnot tak u rozdělování ekvivalence se pohybujeme na území černé skříňky a proto je nutná opatrnost a obezřetnost. {jcomments on}

 

Nejbližší události


Testování software, Powered by Joomla!; Joomla templates by SG web hosting