Sobes.tech
Middle

Jak lze aplikovat ekvivalentní rozdělení pro vstupní pole znaků?

sobes.tech AI

Odpověď od AI

Do vstupního pole pro znaky lze rozdělit do následujících tříd ekvivalentnosti:

  • Povolené třídy:
    • Řetězec složený z povolených znaků (například písmena, číslice, určité speciální znaky povolené specifikací).
    • Řetězec odpovídající minimální povolené délce.
    • Řetězec odpovídající maximální povolené délce.
    • Řetězec s platným formátem (je-li potřeba, například e-mailová adresa).
  • Nepovolené třídy:
    • Řetězec obsahující nepovolené znaky.
    • Prázdný řetězec (nebo řetězec kratší než minimální povolená délka).
    • Řetězec delší než maximální povolená délka.
    • Řetězec s neplatným formátem.
    • Řetězec složený pouze z mezer.
    • Řetězec obsahující pouze speciální znaky (pokud nejsou povoleny).

Příklady testovacích případů založených na rozdělení do tříd ekvivalentnosti:

Ekvivalentní třída Vstupní data Očekávaný výsledek
Povolené znaky, platná délka "TestString123" Přijato
Pouze povolené znaky, minimální délka "a" Přijato
Pouze povolené znaky, maximální délka "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"#$%&'()*+,-./:;<=>?@[\]^_`{ }~"{/* ... (řetězec s maximální délkou) ... */}"
Nepovolené znaky "Test!@#$%^&*" Zamítnuto (chyba validace)
Prázdný řetězec "" Zamítnuto (chyba validace)
Řetězec delší než maximální "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!"#$%&'()*+,-./:;<=>?@[\]^_`{ }~"{/* ... (řetězec delší než limit) ... */}"
Pouze mezery " " Zamítnuto (chyba validace nebo oříznutí, podle požadavků)

Při výběru testovacích dat z každé třídy je třeba také použít analýzu hraničních hodnot (například minimální délka, maximální délka, znaky na hranicích povolených ASCII/Unicode rozsahů).