Junior
Kuidas teha e-posti sisestusvälja test?
sobes.tech AI
Vastus AI-lt
E-posti välja sisestamise test hõlmab nii front-endi kui ka back-endi kontrollimisi ning kasutajaliidese testimist.
Front-end (Client-Side) kontrollimised:
- Vormingukinnitus:
- Õiged aadressid (nt
test@example.com,test.name@sub.example.co.uk). - Vigased aadressid (puudub
@, domeen, vigased erimärgid, tühikud).
- Õiged aadressid (nt
- Sisestuspiirangud:
- Miinimum- ja maksimumpikkus.
- Tühi väli.
- Andmetüüp: Tagada, et väli aktsepteerib ainult emaili jaoks lubatud sümboleid.
- Vigade sõnumid: Vigade sõnumite õigsus ja informatiivsus.
- Koostoimed:
- Välja fookus.
- Sisestusolek.
- Veaolek.
Back-end (Server-Side) kontrollimised:
- Vormingukinnitus: Korduv emaili vormingu kontroll, et vältida front-endi valideerimise möödarookimist.
- Unikaalsus: Kui email peab olema unikaalne (nt registreerimisel), kontroll andmebaasis.
- Ärilogika: Ärireeglite vastavuse kontroll.
- Eri sümbolite töötlemine: Õige sümbolite töötlemine, mis võib põhjustada probleeme.
- Domeeni olemasolu kontroll: Valikuline kontroll, kas domeeniosa eksisteerib.
Testide näited:
- Positiivsed:
- Kehtiva emaili sisestus.
- Pikk domeen.
- Alam-domeenide sisestus.
- Negatiivsed:
- Tühi väli.
- Teksti sisestus ilma
@märgita. - Teksti sisestus ilma domeeni osata pärast
@. - Teksti sisestus tühikutega.
- Vigaste sümbolite sisestus.
- Emaili sisestus, mis ületab maksimaalset pikkust.
- Juba registreeritud emaili sisestus.
- Vigase formaadiga erimärkide sisestus.
Automatiseerimine:
Neid teste saab automatiseerida kasutades erinevaid raamistikke ja tööriistu:
- UI-automatiseerimine: Selenium, Cypress, Playwright.
# Näide Selenium Pythoniga
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("your_app_url")
email_field = driver.find_element_by_id("emailInput") # Leia väli ID järgi
email_field.send_keys("invalid-email") # Sisesta vale email
error_message = driver.find_element_by_id("errorMessage") # Leia veateate element
assert "Invalid email format" in error_message.text # Kontrolli veateate teksti
driver.quit()
- API-automatiseerimine: RestAssured, Postman, Requests (Python).
// Näide Postmanist
{
"email": "invalid-email"
}
// Näide Postmani testidest
pm.test("Statuskood on 400", function () {
pm.response.to.have.status(400); // Kontrolli, et server tagastas 400
});
pm.test("Vigade sõnum on õige", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.message).to.eql("Invalid email format"); // Kontrolli veateate teksti
});
Täiendavad aspektid:
- Testimine reaalsete andmetega.
- Testimine erinevatel seadmetel ja brauserites.
- Laadustestide läbiviimine sisestades suuri andmemahtusid.