Sobes.tech
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()