Guideline: Rozdělení tříd ekvivalencí
Technika černé skříňky,kdy testovací případy jsou navrženy tak, aby pokryly jednotlivé třídy ekvivalence a z každé třídy ekvivalence otestovaly alespoň jednoho zástupce. [ISTQB, 2012, s. 20]
Relationships
Main Description

Jedním ze základních principů testování je, že není možné otestovat úplně vše. Pokud je například vstupní hodnotou věk zákazníka, u něhož má aplikace akceptovat hodnoty od 0 do 120 let, nelze otestovat každou jednotlivou vstupní hodnotu, ale je zapotřebí počet testovaných hodnot zredukovat. Efektivním způsobem, jak počet testovacích případů snížit, je rozdělení hodnot do tříd ekvivalencí [ISTQB, 2012b, s. 27-29]. Rozdělení do tříd ekvivalencí spočívá v tom, že množina vstupních hodnot je rozdělena do skupin, od kterých se očekává, že se budou chovat stejným způsobem. Výběrem jedné reprezentativní hodnoty z této skupiny je potom zajištěno pokrytí i všech ostatních hodnot z dané skupiny. V případě zákazníka by vstupní hodnoty mohly být rozděleny například do následujících tří skupin:

·         zákazníci ve věku od 0 do 17 let (včetně), kteří budou mít slevu JUNIOR ve výši 30 % z plné ceny,

·         zákazníci ve věku od 18 do 59 let (včetně), kteří budou platit plnou cenu,

·         zákazníci ve věku od 60 let, kteří budou mít slevu SENIOR ve výši 20 % z plné ceny.

Reprezentativními hodnotami z těchto skupin potom mohou být například hodnoty 15, 45 a 90.

Kromě těchto základních tří rozdělení, která testují pouze validní data, je vhodné přidat i třídy pro nevalidní data, která aplikace nemá akceptovat. V případě zákazníka mohou být přidány například následující třídy:

·         zákazníci ve věku méně než 0 let, které aplikace odmítne,

·         zákazníci ve věku 120 a více let, které aplikace odmítne.

Reprezentativními hodnotami z těchto skupin potom mohou být například hodnoty -5 a 150. Další skupinou nevalidních dat potom mohou být typicky pokusy o zadání věku v nesprávném datovém formátu, ponechání prázdného pole, apod.

Přehledně tento příklad zachycuje následucjící tabulka.

Rozdělení tříd ekvivalencí, zdroj: [autor]

Třída
ekvivalence

věk < 0

0 ≤ věk > 18

18 ≤ věk > 60

60 ≤ věk > 120

120 ≤ věk

Očekávaný
výsledek

nepřijato

sleva JUNIOR

plná cena

sleva
SENIOR

nepřijato

Testovaná
 hodnota

-5

15

45

90

150

Kromě vstupních hodnot se pomocí rozdělení do tříd ekvivalencí mohou roztřídit také výstupy, interní hodnoty, časově omezené hodnoty nebo rozhraní parametrů.

Ekvivalenční rozdělení je možné aplikovat na všech úrovních testování a je použitelné jak na lidské vstupy, tak i na vstupy skrze rozhraní systému nebo rozhraní parametrů při integračním testování. Pro test analytika je důležité zejména správně porozumět všem procesům, aby pak mohl sestavit co nejlepší třídy ekvivalence a z každé z nich vybrat jednoho zástupce.

Největší sílu má tato technika ve spojení s technikou analýza hraničních hodnot, která se zaměřuje speciálně na testování hodnot na okrajích jednotlivých rozdělení.