Junior
Kaip testuosite vardo įvedimo lauką?
sobes.tech AI
Atsakymas iš AI
Sekantis dalys, kuriuos aš patikrinsiu:
Duomenų tipai:
- Laukas priima tik leidžiamus simbolius (raidės, tarpai).
- Nėra skaičių, specialių simbolių, kirilicos (jei nėra nurodyta).
Ilgis:
- Minimalus leidžiamas ilgis (jei yra).
- Maksimalus leidžiamas ilgis (supjaustomas arba rodomas klaidos pranešimas).
- Leidžiamo ilgio ribos (testavimas minimalus+1, maksimalus-1, minimalus, maksimalus).
Tuščia reikšmė:
- Laukas nėra tuščias (jei būtinas).
- Tinkamas klaidos pranešimo rodymas, jei laukas tuščias ir būtinas.
Tarpai:
- Laukas su tarpais pradžioje, pabaigoje.
- Laukas su keliais tarpais tarp žodžių.
- Laukas tik iš tarpų.
Registras:
- Įvedimas skirtinguose registruose (mažos, didelės raidės).
Kopijavimas/Įklijavimas:
- Kopijavimas iš mainų srities.
- Įklijavimas iš mainų srities.
Sąveika:
- Spustelėjimas ant lauko.
- Navigacija per lauką klaviatūra (Tab, Shift+Tab).
- Tinkamas placeholder rodymas.
Įvedimo ribos (Boundary Value Analysis):
- Minimalus leidžiamas ilgis.
- Maksimalus leidžiamas ilgis.
- Vertės apie ribas (minimalus - 1, minimalus +1, maksimalus -1, maksimalus +1).
Ekvivalentinės klasės (Equivalence Partitioning):
- Tinkami vardai (raidės, tarpai).
- Netinkami vardai (skaičiai, specialūs simboliai).
- Tuščias laukas.
Krovinys (jei reikia):
- Labai ilgas vardo įvedimas (žymiai ilgesnis nei maksimalus, jei nėra apribojimų).
Automatizuotas testavimas:
- Kurti testų atvejus, apimančius aukščiau išvardytus scenarijus.
- Naudoti karkasus (pvz., Selenium, Cypress) sąveikai su lauku.
- Patikrinti validaciją kliento ir serverio pusėje.
// Pavyzdys, kaip patikrinti lauko ilgį naudojant Java ir Selenium
WebElement nameField = driver.findElement(By.id("name"));
nameField.sendKeys("A".repeat(256)); // manytina, kad 255 yra maksimalus
String value = nameField.getAttribute("value");
// Patikriname, ar reikšmė buvo apkarpyta arba išmetė klaidą
# Pavyzdys, kaip patikrinti neteisingus simbolius naudojant Python ir Selenium
from selenium.webdriver.common.keys import Keys
name_field = driver.find_element_by_id("name")
name_field.send_keys("Иван123!@#")
# Patikriname, ar laukas nepriėmė neteisingų simbolių arba išmetė pranešimą