Sobes.tech
Junior

E-posta giriş alanını nasıl test edersiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

E-posta giriş alanının doğrulaması aşağıdaki kontrolleri içerir:

  • Format doğrulaması:
    • Doğru formatlar (isim@alan.konum, isim.soyisim@altalanım.domaine.konum vb.).
    • Yanlış formatlar (@ olmadan, alan olmadan, birden fazla @, yasaklı karakterler, boşluklar ile).
    • Yerel kısım ve alan adında özel karakterler.
    • Farklı uzunluklarda alan adları.
    • Alan adı olarak IP adresi (kullanıcı@[192.168.1.1]).
  • Alan uzunluğu:
    • Minimum izin verilen uzunluk.
    • Maksimum izin verilen uzunluk.
    • Maksimum uzunluğun aşılması.
  • Zorunlu alan:
    • Boş alan ile form gönderimi.
  • Büyük/küçük harf duyarlılığı:
    • Alan alanı case-sensitive mı (genellikle alan kısmı için değil)?
  • Çapraz tarayıcı ve platform testi:
    • Farklı tarayıcılarda ve cihazlarda doğru görüntüleme ve davranış.
  • Güvenlik testi:
    • XSS saldırıları (script girişleri).
    • SQL enjeksiyonları (alan doğrudan veritabanıyla etkileşime giriyorsa).
  • Performans:
    • Uzun/zorlu adreslerin girilmesi sırasında yanıt süresi ("canlı" doğrulama varsa).

Test örnekleri:

ID Test durumu açıklaması Giriş verileri Beklenen sonuç Gerçek sonuç Durum
TC-001 Doğru email formatı test@example.com Sistem emaili kabul eder, hata mesajı gösterilmez.
TC-002 Yanlış format (@ olmadan) testexample.com Sistem format hatası mesajı gösterir.
TC-003 Yanlış format (birden fazla @) test@example@com Sistem format hatası mesajı gösterir.
TC-004 Boş alan (zorunlu) (boş) Sistem, alanın zorunlu olduğunu belirten mesaj gösterir.
TC-005 Uzun email a*250 + @example.com Sistem, izin verilen uzunlukta bir emaili doğru işler.

Otomatik test örneği (Python ve Selenium kullanılarak):

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

def test_valid_email_input():
    driver = webdriver.Chrome() # veya başka bir sürücü
    driver.get("http://uygulama-urliniz.com") # uygulama URL'sini değiştirin

    email_field = driver.find_element(By.ID, "email") # alanın locator'ını değiştirin
    email_field.send_keys("test@example.com")

    # Hata mesajının görünmediğinin kontrolü
    error_message = driver.find_elements(By.ID, "email-error") # hata mesajı locator'ını değiştirin
    assert len(error_message) == 0, "Doğru email için hata mesajı gösterildi"

    driver.quit()

def test_invalid_email_input():
    driver = webdriver.Chrome()
    driver.get("http://uygulama-urliniz.com")

    email_field = driver.find_element(By.ID, "email")
    email_field.send_keys("geçersiz-email")

    # Hata mesajının gösterildiğinin kontrolü
    error_message = driver.find_element(By.ID, "email-error") # hata mesajı locator'ını değiştirin
    assert error_message.is_displayed(), "Geçersiz email için hata mesajı gösterilmedi"

    driver.quit()