Sobes.tech
Junior

Comment effectuer le test du champ de saisie de l'e-mail?

sobes.tech IA

Réponse de l'IA

Les tests du champ de saisie de l'email incluent des vérifications au niveau du frontend et du backend, ainsi que des tests de l'interface utilisateur.

Vérifications côté frontend (côté client):

  • Validation du format:
    • Adresses correctes (ex., test@example.com, test.name@sub.example.co.uk).
    • Adresses incorrectes (absence de @, domaine, caractères spéciaux incorrects, espaces).
  • Limites de saisie:
    • Longueur minimale et maximale.
    • Champ vide.
  • Type de données: S'assurer que le champ n'accepte que les caractères valides pour un email.
  • Messages d'erreur: Exactitude et informativeness des messages en cas de saisie incorrecte.
  • Interaction:
    • Focus sur le champ (état de focus).
    • État de saisie.
    • État d'erreur.

Vérifications côté backend (serveur):

  • Validation du format: Vérification supplémentaire du format de l'email pour éviter de contourner la validation frontend.
  • Unicité: Si l'email doit être unique (par ex., lors de l'inscription), vérification des doublons dans la base de données.
  • Logique métier: Vérification de la conformité aux règles métier (par ex., interdiction de certains domaines).
  • Gestion des caractères spéciaux: Traitement correct des caractères pouvant poser problème (ex., injection SQL).
  • Vérification de l'existence du domaine: Vérification optionnelle de l'existence du domaine de l'email.

Exemples de tests:

  • Positifs:
    • Entrée d'un email valide.
    • Entrée d'un email avec un domaine/extension longue.
    • Entrée d'un email avec des sous-domaines.
  • Négatifs:
    • Champ vide.
    • Entrée de texte sans le caractère @.
    • Entrée de texte sans la partie du domaine après @.
    • Entrée de texte avec des espaces.
    • Entrée de texte avec des caractères non valides.
    • Entrée d'un email dépassant la longueur maximale.
    • Entrée d'un email déjà enregistré (lors de l'inscription).
    • Entrée d'un email avec un format incorrect de caractères spéciaux.

Automatisation:

Pour automatiser ces tests, divers frameworks et outils peuvent être utilisés:

  • Automatisation UI: Selenium, Cypress, Playwright pour tester la validation frontend et l'interaction avec le champ.
# Exemple de pseudocode pour Selenium en Python
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("votre_url_app")

champ_email = driver.find_element_by_id("emailInput") # Trouver le champ par ID
champ_email.send_keys("email-invalide") # Entrer un email invalide

message_erreur = driver.find_element_by_id("errorMessage") # Trouver l'élément du message d'erreur
assert "Format d'email invalide" in message_erreur.text # Vérifier le texte du message

driver.quit()
  • Automatisation API: RestAssured, Postman, Requests (Python) pour tester la validation backend en envoyant des requêtes avec différentes données.
// Exemple de pseudocode pour Postman
{
  "email": "email-invalide"
}
// Exemple de test dans Postman Tests
pm.test("Le code de statut est 400", function () {
    pm.response.to.have.status(400); // Vérifier que le serveur retourne une erreur 400 (Mauvaise requête)
});

pm.test("Le message d'erreur est correct", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.message).to.eql("Format d'email invalide"); // Vérifier le texte du message d'erreur
});

Aspects supplémentaires:

  • Tests avec des données réelles (si une base de données de test est disponible).
  • Tests sur différents appareils et navigateurs.
  • Tests de performance du champ lors de la saisie de grandes quantités de données.