Junior
Ako budete testovať pole pre zadanie mena?
sobes.tech AI
Odpoveď od AI
Nasledujúce budem kontrolovať:
Typy údajov:
- Pole akceptuje iba povolené znaky (písmená, medzery).
- Chýbajúce číslice, špeciálne znaky, cyrilica (ak nie je uvedené).
Dĺžka:
- Minimálna povolená dĺžka (ak existuje).
- Maximálna povolená dĺžka (strihne sa alebo sa zobrazí chyba).
- Hranice povolenej dĺžky (testovanie na minimálne +1, maximálne -1, minimálne, maximálne).
Prázdna hodnota:
- Pole nie je prázdne (ak je povinné).
- Správne zobrazenie správy o chybe, ak je pole prázdne a povinné.
Medzery:
- Pole s medzerami na začiatku, na konci.
- Pole s viacerými medzerami medzi slovami.
- Pole iba z medzier.
Reťazec:
- Vstup v rôznych veľkostiach písmen (malé, veľké).
Kopírovanie/Vloženie:
- Kopírovanie zo schránky.
- Vloženie zo schránky.
Interakcia:
- Kliknutie na pole.
- Navigácia po poli klávesnicou (Tab, Shift+Tab).
- Správne zobrazenie placeholderu.
Hranice zadávania (Boundary Value Analysis):
- Minimálna povolená dĺžka.
- Maximálna povolená dĺžka.
- Hodnoty okolo hraníc (minimálna - 1, minimálna + 1, maximálna - 1, maximálna + 1).
Ekvivalentné triedy (Equivalence Partitioning):
- Správne mená (písmená, medzery).
- Nesprávne mená (číslice, špeciálne znaky).
- Prázdne pole.
Zaťaženie (ak je potrebné):
- Vstup veľmi dlhého mena (oveľa dlhšie ako maximálna dĺžka, ak nie je obmedzenie na úrovni poľa).
Testovanie automatizáciou:
- Vytvorenie testovacích prípadov pokrývajúcich vyššie uvedené scenáre.
- Použitie rámcov (napríklad Selenium, Cypress) na interakciu s poľom.
- Kontrola validácie na strane klienta a servera.
// Príklad kontroly dĺžky poľa v Jave s použitím Selenium
WebElement nameField = driver.findElement(By.id("name"));
nameField.sendKeys("A".repeat(256)); // Predpokladáme, že 255 je max dĺžka
String value = nameField.getAttribute("value");
// Kontrolujeme, či sa hodnota orezala alebo vypísala chyba
# Príklad kontroly nesprávnych znakov v Pythone s použitím Selenium
from selenium.webdriver.common.keys import Keys
name_field = driver.find_element_by_id("name")
name_field.send_keys("Ivan123!@#")
# Kontrolujeme, či pole neprijalo nesprávne znaky alebo vypísalo správu