Junior
Kako testirati polje za unos email adrese?
sobes.tech АИ
Одговор од АИ
Testiranje polja za unos email adrese uključuje sledeće provere:
- Validacija formata:
- Ispravni formati (name@domain.zone, name.surname@subdomain.domain.zone itd.).
- Neispravni formati (bez @, bez domena, sa više @, sa zabranjenim simbolima, sa razmacima).
- Specijalni simboli u lokalnom delu i domeni.
- Domeni različitih dužina.
- IP adresa kao domen (
user@[192.168.1.1]).
- Dužina polja:
- Minimalna dozvoljena dužina.
- Maksimalna dozvoljena dužina.
- Prekoračenje maksimalne dužine.
- Obaveznosť polja:
- Slanje forme sa praznim poljem.
- Osetljivost na velika i mala slova:
- Da li je polje case-sensitive (obično ne za domen).
- Testiranje preko različitih pregledača i platformi:
- Ispravno prikazivanje i ponašanje u različitim pregledačima i na različitim uređajima.
- Testiranje bezbednosti:
- XSS napadi (unos skripti).
- SQL injekcije (ako polje direktno komunicira sa bazom podataka).
- Performanse:
- Vreme odziva pri unosu dužih/kompleksnih adresa (ako postoji validacija "u realnom vremenu").
Primeri test scenarija:
| ID | Opis test scenarija | Ulazni podaci | Očekivani rezultat | Stvarni rezultat | Status |
|---|---|---|---|---|---|
| TC-001 | Ispravan format emaila | test@example.com |
Sistem prihvata email, bez poruke o grešci. | ||
| TC-002 | Neispravan format (bez @) | testexample.com |
Sistem prikazuje poruku o grešci formata. | ||
| TC-003 | Višestruki @ | test@example@com |
Sistem prikazuje poruku o grešci formata. | ||
| TC-004 | Prazno polje (obavezno) | (prazno) | Sistem ukazuje da je polje obavezno. | ||
| TC-005 | Dugačak email | a*250 + @example.com |
Sistem pravilno obrađuje email sa dozvoljenom dužinom. |
Primer automatizovanog testa (Python sa Selenium):
# test_email_field.py
from selenium import webdriver
from selenium.webdriver.common.by import By
def test_valid_email_input():
driver = webdriver.Chrome() # ili drugi driver
driver.get("http://your-app-url.com") # zamenite URL vaše aplikacije
email_field = driver.find_element(By.ID, "email") # zamenite locator polja
email_field.send_keys("test@example.com")
# Provera da li se ne prikazuje poruka o grešci
error_message = driver.find_elements(By.ID, "email-error") # zamenite locator poruke
assert len(error_message) == 0, "Poruka o grešci se pojavila za ispravan email"
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")
# Provera da li se prikazuje poruka o grešci
error_message = driver.find_element(By.ID, "email-error") # zamenite locator poruke
assert error_message.is_displayed(), "Poruka o grešci se ne prikazuje za neispravan email"
driver.quit()