Junior
Kaip išbandyti el. pašto adreso įvedimo lauką?
sobes.tech AI
Atsakymas iš AI
Elektroninio pašto adreso įvedimo lauko testavimas apima patikrinimus:
- Formato validacija:
- Teisingi formatai (name@domain.zone, name.surname@subdomain.domain.zone ir kt.).
- Netinkami formatai (be @, be domeno, keli @, su draudžiamais simboliais, su tarpais).
- Specialieji simboliai lokaliosios dalies ir domeno.
- Domeno pavadinimai įvairaus ilgio.
- IP adresas kaip domenas (
user@[192.168.1.1]).
- Lauko ilgis:
- Minimalus leistinas ilgis.
- Maksimalus leistinas ilgis.
- Viršijimas maksimalaus ilgio.
- Lauko privalomumas:
- Siųsti formą su tuščiu lauku.
- Didžiosios ir mažosios raidės jautrumas:
- Ar laukas yra case-sensitive (paprastai ne domeno dalyje).
- Kryžminis naršyklės ir platformos testavimas:
- Tinkamas rodymas ir elgsena įvairiose naršyklėse ir įrenginiuose.
- Saugumo testavimas:
- XSS atakos (įterpti skriptus).
- SQL injekcijos (jei laukas sąveikauja su duomenų baze tiesiogiai).
- Veikimo našumas:
- Atsako laikas įvedus ilgas/sudėtingas adresus (jei yra "gyvas" validavimas).
Testų pavyzdžiai:
| ID | Testo aprašymas | Įvesties duomenys | Tikėtinas rezultatas | Faktinis rezultatas | Statusas |
|---|---|---|---|---|---|
| TC-001 | Teisingas el. pašto formatas | test@example.com |
Sistema priima el. paštą, nėra klaidos pranešimo. | ||
| TC-002 | Netinkamas formatas (be @) | testexample.com |
Sistema išveda klaidos pranešimą dėl formato. | ||
| TC-003 | Netinkamas formatas (kelios @) | test@example@com |
Sistema išveda klaidos pranešimą dėl formato. | ||
| TC-004 | Tuščias laukas (privalomas) | (tuščias) | Sistema išveda pranešimą, kad laukas privalomas. | ||
| TC-005 | Ilgas el. paštas | a*250 + @example.com |
Sistema teisingai apdoroja leistiną ilgio el. paštą. |
Automatizuoto testo pavyzdys (Python su Selenium):
# test_email_field.py
from selenium import webdriver
from selenium.webdriver.common.by import By
def test_valid_email_input():
driver = webdriver.Chrome() # arba kitas vairuotojas
driver.get("http://your-app-url.com") # pakeisti į programėlės URL
email_field = driver.find_element(By.ID, "email") # pakeisti į lauko locator
email_field.send_keys("test@example.com")
# Patikrinimas, ar nėra klaidos pranešimo
error_message = driver.find_elements(By.ID, "email-error") # pakeisti į klaidos pranešimo locator
assert len(error_message) == 0, "Klaidos pranešimas pasirodė teisingam el. paštui"
driver.quit()
def test_invalid_email_input():
driver = webdriver.Chrome()
driver.get("http://your-app-url.com")
email_field = driver.find_element(By.ID, "email")
email_field.send_keys("invalid-email")
# Patikrinimas, ar rodomas klaidos pranešimas
error_message = driver.find_element(By.ID, "email-error") # pakeisti į klaidos pranešimo locator
assert error_message.is_displayed(), "Klaidos pranešimas nerodytas netinkamam el. paštui"
driver.quit()