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()