Sobes.tech
Junior

Come testare il campo di inserimento dell'indirizzo email?

sobes.tech AI

Risposta dell'AI

La verifica del campo di inserimento dell'indirizzo email include i seguenti controlli:

  • Validazione del formato:
    • Formati corretti (nome@dominio.zona, nome.cognome@sottodominio.dominio.zona, ecc.).
    • Formati incorretti (senza @, senza dominio, con più @, con caratteri proibiti, con spazi).
    • Caratteri speciali nella parte locale e nel dominio.
    • Nomi di dominio di diverse lunghezze.
    • Indirizzo IP come dominio (utente@[192.168.1.1]).
  • Lunghezza del campo:
    • Lunghezza minima consentita.
    • Lunghezza massima consentita.
    • Superamento della lunghezza massima.
  • Obbligatorietà del campo:
    • Invio del modulo con campo vuoto.
  • Sensibilità alle maiuscole:
    • Il campo è case-sensitive (di solito no per la parte del dominio)?
  • Test cross-browser e multipiattaforma:
    • Visualizzazione e comportamento corretti su diversi browser e dispositivi.
  • Test di sicurezza:
    • Attacchi XSS (iniezione di script).
    • Iniezioni SQL (se il campo interagisce direttamente con un database).
  • Prestazioni:
    • Tempo di risposta durante l'inserimento di indirizzi lunghi o complessi (se è presente validazione "in tempo reale").

Esempi di casi di test:

ID Descrizione del caso di test Dati di input Risultato atteso Risultato effettivo Stato
TC-001 Formato email corretto test@example.com Il sistema accetta l'email, nessun messaggio di errore.
TC-002 Formato incorretto (senza @) testexample.com Il sistema mostra un messaggio di errore di formato.
TC-003 Formato incorretto (più @) test@example@com Il sistema mostra un messaggio di errore di formato.
TC-004 Campo vuoto (obbligatorio) (vuoto) Il sistema mostra un messaggio che indica che il campo è obbligatorio.
TC-005 Email lunga a*250 + @example.com Il sistema gestisce correttamente un'email di lunghezza consentita.

Esempio di test automatizzato (Python con Selenium):

# test_email_field.py
from selenium import webdriver
from selenium.webdriver.common.by import By

def test_valid_email_input():
    driver = webdriver.Chrome() # o altro driver
    driver.get("http://tuo-url-dell-app.com") # sostituisci con l'URL dell'applicazione

    email_field = driver.find_element(By.ID, "email") # sostituisci con il localizzatore del campo
    email_field.send_keys("test@example.com")

    # Verifica assenza di messaggio di errore
    error_message = driver.find_elements(By.ID, "email-error") # sostituisci con il localizzatore del messaggio
    assert len(error_message) == 0, "Il messaggio di errore è apparso per email corretta"

    driver.quit()

def test_invalid_email_input():
    driver = webdriver.Chrome()
    driver.get("http://tuo-url-dell-app.com")

    email_field = driver.find_element(By.ID, "email")
    email_field.send_keys("email-invalido")

    # Verifica che venga mostrato il messaggio di errore
    error_message = driver.find_element(By.ID, "email-error") # sostituisci con il localizzatore del messaggio
    assert error_message.is_displayed(), "Il messaggio di errore non è stato mostrato per email incorretta"

    driver.quit()