Sobes.tech
Junior

¿Cómo realizar la prueba del campo de entrada de correo electrónico?

sobes.tech AI

Respuesta de la IA

Las pruebas del campo de entrada de correo electrónico incluyen verificaciones a nivel de frontend y backend, así como pruebas de la interfaz de usuario.

Verificaciones del frontend (lado del cliente):

  • Validación del formato:
    • Direcciones correctas (p.ej., test@example.com, test.name@sub.example.co.uk).
    • Direcciones incorrectas (falta de @, dominio, caracteres especiales incorrectos, espacios).
  • Límites de entrada:
    • Longitud mínima y máxima.
    • Campo vacío.
  • Tipo de datos: Asegurarse de que el campo acepte solo caracteres permitidos en email.
  • Mensajes de error: Correctitud e informatividad de los mensajes en caso de entrada incorrecta.
  • Interacción:
    • Enfoque en el campo (estado de foco).
    • Estado de escritura.
    • Estado de error.

Verificaciones del backend (lado del servidor):

  • Validación del formato: Verificación adicional del formato del email para prevenir saltarse la validación del frontend.
  • Unicidad: Si el email debe ser único (por ejemplo, en registro), verificar duplicados en la base de datos.
  • Lógica de negocio: Verificación del cumplimiento de reglas de negocio (por ejemplo, prohibición de ciertos dominios).
  • Manejo de caracteres especiales: Manejo correcto de caracteres que puedan causar problemas (p.ej., inyección SQL).
  • Verificación de existencia del dominio: Verificación opcional de la existencia del dominio del email.

Ejemplos de pruebas:

  • Positivas:
    • Entrada de un email válido.
    • Entrada de un email con un dominio/extensión larga.
    • Entrada de un email con subdominios.
  • Negativas:
    • Campo vacío.
    • Entrada de texto sin el carácter @.
    • Entrada de texto sin la parte del dominio después de @.
    • Entrada de texto con espacios.
    • Entrada de texto con caracteres no permitidos.
    • Entrada de un email que excede la longitud máxima.
    • Entrada de un email ya registrado (en registro).
    • Entrada de un email con formato incorrecto de caracteres especiales.

Automatización:

Para automatizar estas pruebas, se pueden usar varios frameworks y herramientas:

  • Automatización de UI: Selenium, Cypress, Playwright para pruebas de validación frontend y interacción con el campo.
# Ejemplo de pseudocódigo para Selenium en Python
from selenium import webdriver

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

campo_email = driver.find_element_by_id("emailInput") # Encontrar el campo por ID
campo_email.send_keys("email-invalido") # Ingresar email incorrecto

mensaje_error = driver.find_element_by_id("errorMessage") # Encontrar el elemento con el mensaje de error
assert "Formato de email inválido" in mensaje_error.text # Verificar el texto del error

driver.quit()
  • Automatización de API: RestAssured, Postman, Requests (Python) para pruebas de validación backend enviando solicitudes con diferentes datos.
// Ejemplo de pseudocódigo para Postman
{
  "email": "email-invalido"
}
// Ejemplo de prueba en Postman Tests
pm.test("El código de estado es 400", function () {
    pm.response.to.have.status(400); // Verificar que el servidor devuelva error 400 (Solicitud incorrecta)
});

pm.test("El mensaje de error es correcto", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.message).to.eql("Formato de email inválido"); // Verificar el texto del error en la respuesta
});

Aspectos adicionales:

  • Pruebas con datos reales (si hay una base de datos de prueba).
  • Pruebas en diferentes dispositivos y navegadores.
  • Pruebas de rendimiento del campo al ingresar grandes volúmenes de datos.