Mi az az egyenértékességi osztályok elemzési technika, és hogyan alkalmazzák a szoftvertesztelésben?
sobes.tech MI
Válasz az MI-től
Az ekvivalenciaosztály-elemzési technika (Ekvivalencia-particionálás) egy teszteset-tervezési módszer, amely az bemeneti adatok (vagy kimeneti feltételek) osztályokra bontásán alapul, melyeknek képviselőit a program hasonló módon dolgozza fel. Egy osztályból egy képviselő tesztelése elegendő az egész osztály lefedéséhez.
Fő ötlet: Ha egy osztály egyik képviselőjén teszt hibát talál, akkor valószínűleg másik képviselőjén is hibát fog találni ugyanabból az osztályból. Ha egy képviselőn nem talál hibát, akkor valószínűleg másik képviselőjén sem fog.
Alkalmazás:
- Ekvivalenciaosztályok azonosítása:
- Minden bemeneti mezőre meghatározzák az engedélyezett és nem engedélyezett osztályokat (számkiterjedés, karakterláncok halmaza, logikai értékek stb.).
- Számkiterjedések esetén:
- Engedélyezett tartomány.
- Alsó határ alatti számok (nem engedélyezett osztály).
- Felső határ feletti számok (nem engedélyezett osztály).
- Értékkészletek esetén:
- Engedélyezett értékek.
- Nem engedélyezett értékek (pl. karakterláncok számmezőben).
- Például, az "Életkor" mező 18-tól 65 évig:
- Engedélyezett osztály: 18-65 (pl. 25, 40, 60)
- Nem engedélyezett osztály: < 18 (pl. 17, 0)
- Nem engedélyezett osztály: > 65 (pl. 66, 100)
- Teszt esetek létrehozása:
- Minden azonosított osztályból kiválasztanak egy képviselőt (engedélyezett és nem engedélyezett).
- A kiválasztott képviselőkkel tesztesetek készülnek.
Példa:
Rendelési űrlap, "Mennyiség" mező, engedélyezett érték 1-től 99-ig.
| Ekvivalenciaosztály | Típus | Teszt képviselők |
|---|---|---|
| Kevesebb mint 1 | Nem engedélyezett | 0, -5 |
| 1-től 99-ig | Engedélyezett | 1, 50, 99 |
| Több mint 99 | Nem engedélyezett | 100, 1000 |
| Nem numerikus értékek | Nem engedélyezett | "abc", " " |
Minden osztályból legalább egy képviselőt választanak, hogy tesztesetet hozzanak létre. Például, ehhez a mezőhöz legalább 4-6 teszteset lesz, amelyek lefedik az összes azonosított osztályt.
Előnyök:
- Csökkenti a tesztesetek redundanciáját.
- Segít a tesztelési folyamat rendszerbe foglalásában.
- Biztosítja a jó tesztlefedettséget kevesebb esettel, mint minden lehetséges bemeneti érték tesztelése.
Hátrányok:
- Nem biztos, hogy észleli a határérték hibákat (gyakran határérték-elemzéssel együtt használják).
- A hatékonyság a helyes ekvivalenciaosztály-azonosítástól függ.