Testing de Helpers en PHP con PHPUnit

Clase 6 de 24Curso Básico de Testing con PHP y Laravel

Resumen

¿Cómo crear un helper para validar correos electrónicos en PHP?

El desarrollo y validación de helpers es una parte integral del proceso de programación en PHP y Laravel. Estos archivos no solo facilitan la gestión de funciones recurrentes, sino que también mejoran la eficiencia del código y su mantenimiento a largo plazo. Veamos cómo crear y probar un helper para la validación de correos electrónicos.

¿Cuál es el primer paso para crear un helper?

  1. Crear un archivo de testing:

    • Utiliza el comando php artisan make:test nombreDelTest para generar un nuevo archivo de pruebas en tu entorno de trabajo. Este archivo será donde se concentren las funciones específicas a evaluar.
  2. Definir el helper a crear:

    • Dentro del archivo de test, define la función helper que deseas implementar. En este caso, estamos trabajando con un helper llamado validarEmail.

¿Cómo se desarrolla la función de validación de email?

  1. Programar en un nuevo archivo:

    • Crea un archivo llamado funciones.php o helper.php en la raíz del proyecto. Este archivo contendrá todas las funciones que desees implementar.
  2. Desarrollar la función validarEmail:

    • Comprueba si la función ya existe, y si no, créala con un simple if que valide su existencia.
    if (!function_exists('validarEmail')) {
        function validarEmail($email) {
            // Asumiendo que la clase Email con su método de validación ya está creada
            return Email::validar($email);
        }
    }
    

¿Cómo integrar el helper en el archivo de Composer?

  1. Configurar el autoload en Composer:

    • Localiza la llave autoload en el archivo composer.json y añade lo siguiente:
    "autoload": {
        "files": ["app/helper.php"]
    }
    
  2. Actualizar Composer:

    • Ejecuta el comando composer dump-autoload para actualizar la configuración de Composer. Esto garantizará que el archivo del helper sea reconocido en todo el proyecto.

¿Cómo probamos el helper con PHPUnit?

  1. Ejecutar las pruebas:

    • Una vez configurado el helper, verifica su funcionalidad ejecutando PHPUnit con el comando php artisan test. Esto debería indicarte si los tests se ejecutan correctamente.
  2. Verificar la salida esperada:

    • Asegúrate de que los resultados de los tests coincidan con los resultados esperados. Un correo válido debe retornar true, mientras que uno inválido, false.

¿Por qué el testing es esencial en el desarrollo?

El testing automatizado nos evita la preocupación de introducir errores al revisar el navegador manualmente cada vez que realizamos un cambio. A medida que los proyectos crecen, las pruebas se vuelven fundamentales para asegurar que las modificaciones no afecten funcionalidades existentes. Considere que probar una función sin alterarla en el entorno gráfico es crucial para mantener la integridad del proyecto.

En resumen, el uso de helpers y pruebas automatizadas son mecanismos importantes en desarrollo moderno de software, especialmente cuando se trabaja con PHP y Laravel, ya que permite centrarse en los resultados y dinamiza la gestión del código.