Sobes.tech
Junior

¿Cómo se puede probar un campo de entrada de correo electrónico?

sobes.tech AI

Respuesta de la IA

Verificar la validez del formato (presencia de @, dominio). Verificar la longitud máxima del campo. Verificar el manejo de caracteres especiales (!@#$%^&*()_+=-{}[]|\\:;"'<>,.?/~). Verificar la entrada de cadenas vacías y espacios. Verificar la entrada en cirílico. Verificar copiar/pegar. Verificar el envío de formularios con emails válidos e inválidos. Verificar el funcionamiento del placeholder. Verificar el estilo del campo en diferentes estados (enfoque, error). Verificar la accesibilidad (por ejemplo, con un lector de pantalla). Verificar la visualización en diferentes dispositivos y navegadores.

Automatización: Usar expresiones regulares para verificar el formato.

import re

def is_valid_email(email):
    # Expresión regular simple para ejemplo
    pattern = r"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$"
    return re.match(pattern, email) is not None

# Ejemplo de uso
email1 = "test@example.com"
email2 = "invalid-email"
print(f"{email1}: {is_valid_email(email1)}")
print(f"{email2}: {is_valid_email(email2)}")

Usar frameworks de automatización de UI (Selenium, Cypress) para interactuar con el campo de entrada.

// Ejemplo en Java con Selenium
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class EmailFieldTest {
    public static void main(String[] args) {
        // Establecer la ruta al driver
        System.setProperty("webdriver.chrome.driver", "path/to/chromedriver");
        WebDriver driver = new ChromeDriver();

        try {
            driver.get("http://your-website.com/form"); // Reemplazar con la URL de la página con el formulario

            WebElement emailField = driver.findElement(By.id("email")); // Reemplazar con el ID de tu campo

            // Prueba con entrada válida
            emailField.sendKeys("valid.email@test.com");
            // Agregar verificación de que no aparece mensaje de error

            // Prueba con entrada inválida
            emailField.clear();
            emailField.sendKeys("invalid-email");
            // Agregar verificación de que aparece mensaje de error

        } finally {
            driver.quit();
        }
    }
}