Ce este tehnica de analiză a claselor de echivalență și cum se aplică în testarea software-ului?
sobes.tech AI
Răspuns de la AI
Tehnica de analiză a claselor de echivalență (Partitionarea de echivalență) este o metodă de proiectare a cazurilor de test bazată pe împărțirea datelor de intrare (sau a condițiilor de ieșire) în clase, ale căror reprezentanți vor fi procesați de program în mod similar. Se consideră suficient să se testeze un reprezentant din fiecare clasă pentru a acoperi întreaga clasă.
Ideea principală: Dacă un test pe un reprezentant al clasei detectează o eroare, probabil că și testul pe orice alt reprezentant al aceleiași clase va detecta o eroare. Dacă testul pe un reprezentant nu detectează eroare, probabil că și testul pe orice alt reprezentant al aceleiași clase nu va detecta eroare.
Aplicare:
- Identificarea claselor de echivalență:
- Se determină clasele permise și cele nepermise pentru fiecare câmp de intrare (interval numeric, set de șiruri, valori booleene etc.).
- Pentru intervalele numerice:
- Interval permis.
- Numar mai mic decât limita inferioară (clasă nepermisă).
- Numar mai mare decât limita superioară (clasă nepermisă).
- Pentru seturile de valori:
- Valori permise.
- Valori nepermise (de exemplu, șiruri în câmpuri numerice).
- De exemplu, pentru câmpul "Vârstă" de la 18 la 65 de ani:
- Clasă permisă: 18-65 (de exemplu, 25, 40, 60)
- Clasă nepermisă: < 18 (de exemplu, 17, 0)
- Clasă nepermisă: > 65 (de exemplu, 66, 100)
- Crearea cazurilor de test:
- Se selectează un reprezentant din fiecare clasă identificată (permisă și nepermisă).
- Se creează cazuri de test cu reprezentanții selectați ca date de intrare.
Exemplu:
Formular de comandă, câmp "Cantitate produs", valoare permisă de la 1 la 99.
| Clasă de echivalență | Tip | Reprezentanți pentru testare |
|---|---|---|
| Mai mică decât 1 | Nepermis | 0, -5 |
| Între 1 și 99 | Permis | 1, 50, 99 |
| Mai mare decât 99 | Nepermis | 100, 1000 |
| Valori non-numerice | Nepermis | "abc", " " |
Din fiecare clasă se alege cel puțin un reprezentant pentru crearea unui caz de test. De exemplu, pentru acest câmp vor fi cel puțin 4-6 cazuri de test care acoperă toate clasele identificate.
Avantaje:
- Reduce redundanța cazurilor de test.
- Ajută la sistematizarea procesului de testare.
- Asigură o bună acoperire a testelor cu un număr mai mic de cazuri comparativ cu testarea fiecărei valori de intrare posibile.
Dezavantaje:
- Poate să nu detecteze erori la valorile limită (adesea utilizat în combinație cu analiza valorilor limită).
- Eficacitatea depinde de identificarea corectă a claselor de echivalență.