Junior
Jak budete testovat pole pro zadání jména?
sobes.tech AI
Odpověď od AI
Budu kontrolovat následující:
Typy dat:
- Pole přijímá pouze povolené znaky (písmena, mezery).
- Chybí číslice, speciální znaky, cyrilice (pokud není uvedeno).
Délka:
- Minimální povolená délka (pokud existuje).
- Maximální povolená délka (zkrácená nebo chyba se zobrazí).
- Limity povolené délky (testování na minimální+1, maximální-1, minimální, maximální).
Prázdná hodnota:
- Pole není prázdné (pokud je povinné).
- Správné zobrazení chybové zprávy, pokud je pole prázdné a povinné.
Mezery:
- Pole s mezerami na začátku, na konci.
- Pole s více mezerami mezi slovy.
- Pole pouze z mezer.
Velká/malá písmena:
- Vstup v různých registrech (malá, velká písmena).
Kopírování/vkládání:
- Kopírování ze schránky.
- Vkládání ze schránky.
Interakce:
- Kliknutí na pole.
- Navigace v poli pomocí klávesnice (Tab, Shift+Tab).
- Správné zobrazení placeholderu.
Hranice vstupu (Boundary Value Analysis):
- Minimální povolená délka.
- Maximální povolená délka.
- Hodnoty blízko hranic (minimální - 1, minimální + 1, maximální - 1, maximální + 1).
Třídy ekvivalence (Partitioning):
- Správná jména (písmena, mezery).
- Nesprávná jména (číslice, speciální znaky).
- Prázdné pole.
Zátěž (pokud je třeba):
- Zadání velmi dlouhého jména (mnohem delšího než maximální délka, pokud není omezení na úrovni pole).
Automatizované testování:
- Vytvoření testovacích případů pokrývajících výše uvedené scénáře.
- Použití frameworků (například Selenium, Cypress) pro interakci s polem.
- Kontrola validace na straně klienta a serveru.
// Příklad kontroly délky pole v Java s použitím Selenium
WebElement nameField = driver.findElement(By.id("name"));
nameField.sendKeys("A".repeat(256)); // Předpokládáme, že 255 je maximální délka
String value = nameField.getAttribute("value");
// Kontrola, zda byla hodnota oříznuta nebo se zobrazila chybová zpráva
# Příklad kontroly nesprávných znaků v Python s použitím Selenium
from selenium.webdriver.common.keys import Keys
name_field = driver.find_element_by_id("name")
name_field.send_keys("Иван123!@#")
# Kontrola, zda pole nepřijalo nesprávné znaky nebo se zobrazila zpráva