Middle
Ako možno použiť ekvivalentné delenie pre vstupné pole znakov?
sobes.tech AI
Odpoveď od AI
Môžete rozdeliť vstupné pole znakov do nasledujúcich tried ekvivalentnosti:
- Povolené triedy:
- Reťazec pozostávajúci z povolených znakov (napríklad písmená, číslice, určité špeciálne znaky povolené špecifikáciou).
- Reťazec zodpovedajúci minimálnej povolenej dĺžke.
- Reťazec zodpovedajúci maximálnej povolenej dĺžke.
- Reťazec s platným formátom (ak je potrebné, napríklad e-mailová adresa).
- Nepovolené triedy:
- Reťazec obsahujúci nepovolené znaky.
- Prázdny reťazec (alebo reťazec kratší ako minimálna povolená dĺžka).
- Reťazec dlhší ako maximálna povolená dĺžka.
- Reťazec s neplatným formátom.
- Reťazec pozostávajúci iba z medzier.
- Reťazec obsahujúci iba špeciálne znaky (ak nie sú povolené).
Príklady testovacích prípadov založených na rozdelení do tried ekvivalentnosti:
| Trieda ekvivalentnosti | Vstupné údaje | Očakávaný výsledok |
|---|---|---|
| Povolené znaky, platná dĺžka | "TestString123" | Prijaté |
| Iba povolené znaky, minimálna dĺžka | "a" | Prijaté |
| Iba povolené znaky, maximálna dĺžka | "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"#$%&'()*+,-./:;<=>?@[\]^_`{ | }~"{/* ... (reťazec s maximálnou dĺžkou) ... */}" |
| Nepovolené znaky | "Test!@#$%^&*" | Zamietnuté (chyba validácie) |
| Prázdny reťazec | "" | Zamietnuté (chyba validácie) |
| Dlhší ako maximálna | "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"#$%&'()*+,-./:;<=>?@[\]^_`{ | }~"{/* ... (reťazec dlhší ako limit) ... */}" |
| Iba medzery | " " | Zamietnuté (chyba validácie alebo orezanie, v závislosti od požiadaviek) |
Pri výbere testovacích dát z každej triedy je tiež potrebné použiť analýzu hraničných hodnôt (napríklad, minimálna dĺžka, maximálna dĺžka, znaky na hraniciach povolených ASCII/Unicode rozsahov).