Sobes.tech
Junior

Ako otestovať pole pre zadanie e-mailovej adresy?

sobes.tech AI

Odpoveď od AI

Testovanie poľa na zadanie e-mailovej adresy zahŕňa nasledovné kontroly:

  • Validácia formátu:
    • Správne formáty (name@domain.zone, name.surname@subdomain.domain.zone a pod.).
    • Nesprávne formáty (bez @, bez domény, s viacerými @, s zakázanými znakmi, s medzerami).
    • Špeciálne znaky v lokálnej časti a doméne.
    • Domény rôznych dĺžok.
    • IP adresa ako doména (user@[192.168.1.1]).
  • Dĺžka poľa:
    • Minimálna povolená dĺžka.
    • Maximálna povolená dĺžka.
    • Prekročenie maximálnej dĺžky.
  • Povinnosť poľa:
    • Odoslanie formulára s prázdnym poľom.
  • Citlivosť na veľké a malé písmená:
    • Je pole case-sensitive (zvyčajne nie pre doménu).
  • Testovanie naprieč prehliadačmi a platformami:
    • Správne zobrazenie a správanie v rôznych prehliadačoch a na rôznych zariadeniach.
  • Testovanie bezpečnosti:
    • XSS útoky (vkladanie skriptov).
    • SQL injekcie (ak pole priamo komunikuje s databázou).
  • Výkon:
    • Čas odozvy pri zadávaní dlhých/zložitých adries (ak existuje validácia "za behu").

Príklady testovacích scenárov:

ID Popis testovacieho scenára Vstupné údaje Očakávaný výsledok Skutočný výsledok Stav
TC-001 Správny formát emailu test@example.com Systém akceptuje email, bez chybovej správy.
TC-002 Nesprávny formát (bez @) testexample.com Systém hlási chybu formátu.
TC-003 Viacnásobné @ test@example@com Systém hlási chybu formátu.
TC-004 Prázdne pole (povinné) (prázdne) Systém upozorňuje, že pole je povinné.
TC-005 Dlhý email a*250 + @example.com Systém správne spracováva email s povolenou dĺžkou.

Príklad automatizovaného testu (Python s Selenium):

# test_email_field.py
from selenium import webdriver
from selenium.webdriver.common.by import By

def test_valid_email_input():
    driver = webdriver.Chrome() # alebo iný driver
    driver.get("http://your-app-url.com") # nahraďte URL vašej aplikácie

    email_field = driver.find_element(By.ID, "email") # nahraďte locator poľa
    email_field.send_keys("test@example.com")

    # Kontrola, že sa nezobrazuje chybová správa
    error_message = driver.find_elements(By.ID, "email-error") # nahraďte locator správy
    assert len(error_message) == 0, "Chybová správa sa zobrazila pre správny 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")

    # Kontrola, že sa zobrazuje chybová správa
    error_message = driver.find_element(By.ID, "email-error") # nahraďte locator správy
    assert error_message.is_displayed(), "Chybová správa sa nezobrazuje pre nesprávny email"

    driver.quit()