Junior
Elektron poçt giriş sahəsinin testini necə həyata keçirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
Elektron poçt ünvanı daxil etmə sahəsinin testləri ön və arxa uç səviyyələrində yoxlamaları və istifadəçi interfeysinin testlərini əhatə edir.
Ön uç (Client-Side) yoxlamalar:
- Formatın doğruluğu:
- Düzgün ünvanlar (məsələn,
test@example.com,test.name@sub.example.co.uk). - Yanlış ünvanlar (məsələn,
@olmaması, domenin olmaması, xüsusi simvolların düzgün olmaması, boşluqlar).
- Düzgün ünvanlar (məsələn,
- Daxil etmə sərhədləri:
- Minimum və maksimum uzunluq.
- Boş sahə.
- Məlumat tipi: Elektron poçt üçün icazə verilən simvolları qəbul etdiyindən əmin olun.
- Xəta mesajları: Yanlış daxil etmə zamanı mesajların düzgünlüyü və məlumatlandırıcı olması.
- Əlaqə:
- Sahənin fokus vəziyyəti.
- Daxil etmə vəziyyəti.
- Xəta vəziyyəti.
Arxa uç (Server-Side) yoxlamalar:
- Formatın doğruluğu: Ön uç yoxlamasını keçmək üçün elektron poçt formatının yenidən yoxlanması.
- Unikalıq: Əgər elektron poçt unikal olmalıdırsa (məsələn, qeydiyyat zamanı), bazada təkrarlamaları yoxlama.
- Biznes məntiqi: Biznes qaydalarına uyğunluğu yoxlama.
- Xüsusi simvolların işlənməsi: SQL injection kimi problemlərə səbəb ola biləcək simvolların düzgün işlənməsi.
- Domenin mövcudluğunun yoxlanması: Elektron poçtun domen hissəsinin mövcudluğunun yoxlanması.
Test nümunələri:
- Müsbət:
- Düzgün elektron poçt ünvanı daxil etmək.
- Uzun domen və ya domen zonası olan ünvan daxil etmək.
- Alt domenləri olan ünvan daxil etmək.
- Mənfi:
- Boş sahə.
@simvolu olmayan mətn daxil etmək.@sonrası domen hissəsi olmayan mətn daxil etmək.- Boşluqlu mətn daxil etmək.
- Qəbuledilməz simvollarla daxil etmək.
- Maksimal uzunluğu aşan email daxil etmək.
- Artıq qeydiyyatdan keçmiş email daxil etmək.
- Yanlış formatda xüsusi simvollarla daxil etmək.
Avtomatlaşdırma:
Bu testlərin avtomatlaşdırılması üçün müxtəlif çərçivələr və alətlər istifadə oluna bilər:
- UI-automatlaşdırma: Selenium, Cypress, Playwright ilə ön uç yoxlamaları və sahə ilə qarşılıqlı əlaqə.
# Selenium üçün nümunə pseudokod
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("your_app_url")
email_field = driver.find_element_by_id("emailInput") # Sahəni ID ilə tapın
email_field.send_keys("invalid-email") # Yanlış email daxil edin
error_message = driver.find_element_by_id("errorMessage") # Xəta mesajı elementini tapın
assert "Invalid email format" in error_message.text # Xəta mesajını yoxlayın
driver.quit()
- API-automatlaşdırma: RestAssured, Postman, Requests (Python) ilə arxa uç yoxlamaları və müxtəlif məlumatlarla sorğu göndərmə.
// Postman üçün nümunə pseudokod
{
"email": "invalid-email"
}
// Postman Tests-də yoxlama nümunəsi
pm.test("Status code is 400", function () {
pm.response.to.have.status(400); // Serverin 400 (Bad Request) xətası verdiyini yoxlayırıq
});
pm.test("Error message is correct", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.message).to.eql("Invalid email format"); // Xəta mesajını yoxlayırıq
});
Əlavə aspektlər:
- Real məlumatlar ilə testlər (test bazası mövcuddursa).
- Müxtəlif cihazlar və brauzerlərdə test.
- Böyük həcmdə məlumat daxil edərkən sahənin performansını yoxlama.