Junior
Comment effectuer le test du champ de saisie de l'adresse e-mail?
sobes.tech IA
Réponse de l'IA
La vérification du champ de saisie de l'adresse e-mail comprend les contrôles suivants :
- Validation du format :
- Formats corrects (nom@domaine.zone, nom.prenom@subdomaine.domaine.zone, etc.).
- Formats incorrects (sans @, sans domaine, avec plusieurs @, avec des caractères interdits, avec des espaces).
- Caractères spéciaux dans la partie locale et dans le domaine.
- Noms de domaine de différentes longueurs.
- Adresse IP comme domaine (
utilisateur@[192.168.1.1]).
- Longueur du champ :
- Longueur minimale autorisée.
- Longueur maximale autorisée.
- Dépassement de la longueur maximale.
- Obligation du champ :
- Soumission du formulaire avec le champ vide.
- Sensibilité à la casse :
- Le champ est-il sensible à la casse (habituellement non pour la partie du domaine) ?
- Test cross-navigateurs et multiplateforme :
- Affichage et comportement corrects sur différents navigateurs et appareils.
- Test de sécurité :
- Attaques XSS (injection de scripts).
- Injections SQL (si le champ interagit directement avec une base de données).
- Performance :
- Temps de réponse lors de la saisie d'adresses longues ou complexes (si validation "en temps réel").
Exemples de cas de test :
| ID | Description du cas de test | Données d'entrée | Résultat attendu | Résultat réel | Statut |
|---|---|---|---|---|---|
| TC-001 | Format email correct | test@example.com |
Le système accepte l'email, pas de message d'erreur. | ||
| TC-002 | Format incorrect (sans @) | testexample.com |
Le système affiche un message d'erreur de format. | ||
| TC-003 | Format incorrect (plusieurs @) | test@example@com |
Le système affiche un message d'erreur de format. | ||
| TC-004 | Champ vide (obligatoire) | (vide) | Le système affiche un message indiquant que le champ est obligatoire. | ||
| TC-005 | Email long | a*250 + @example.com |
Le système traite correctement un email de longueur admissible. |
Exemple de test automatisé (Python avec Selenium) :
# test_email_field.py
from selenium import webdriver
from selenium.webdriver.common.by import By
def test_valid_email_input():
driver = webdriver.Chrome() # ou autre driver
driver.get("http://votre-url-de-l-application.com") # remplacez par l'URL de l'application
email_field = driver.find_element(By.ID, "email") # remplacez par le localisateur du champ
email_field.send_keys("test@example.com")
# Vérification de l'absence de message d'erreur
error_message = driver.find_elements(By.ID, "email-error") # remplacez par le localisateur du message
assert len(error_message) == 0, "Le message d'erreur est apparu pour un email correct"
driver.quit()
def test_invalid_email_input():
driver = webdriver.Chrome()
driver.get("http://votre-url-de-l-application.com")
email_field = driver.find_element(By.ID, "email")
email_field.send_keys("email-invalide")
# Vérification de l'affichage du message d'erreur
error_message = driver.find_element(By.ID, "email-error") # remplacez par le localisateur du message
assert error_message.is_displayed(), "Le message d'erreur ne s'est pas affiché pour un email incorrect"
driver.quit()