Pruebas de Métodos Personalizados en PHP con Laravel
Clase 8 de 24 • Curso Básico de Testing con PHP y Laravel
Contenido del curso
- 5

Verificación de Resultados en Pruebas Unitarias con PHPUnit
07:09 - 6

Testing de Helpers en PHP con PHPUnit
07:26 - 7

Pruebas Unitarias en Laravel: Mutadores y Campos Virtuales
08:29 - 8

Pruebas de Métodos Personalizados en PHP con Laravel
04:56 - 9

Testing de Carga de Archivos en Laravel
08:49 - 10

Creación de Formulario HTML para Carga de Imágenes en Servidor
04:47 - 11

Refactorización y Testing en Proyectos de Programación
04:49 - 12

Validación de Formularios y Testing en Laravel
06:12 - 13

Pruebas de Datos en Bases de Datos con PHP y Laravel
08:41
- 14

Metodología TDD en PHP: Creación y Pruebas Efectivas
04:37 - 15

Desarrollo de un Proyecto Sencillo con Enfoque en Testing
01:35 - 16

Pruebas HTTP en PHP con Artisan y Base de Datos
08:48 - 17

Test de Visualización de Datos en Tabla de Etiquetas
05:36 - 18

Configuración de Pruebas Unitarias para Crear Registros en Laravel
07:35 - 19

Eliminación de registros en base de datos con Laravel
06:00 - 20

Validación
03:16 - 21

Pruebas de Funcionalidad de Etiquetas en Laravel desde el Navegador
05:25 - 22

Mejorando el Diseño de Proyectos con Tailwind CSS
06:37 - 23

Pruebas Unitarias en PHP: Creación y Verificación de Campos Virtuales
05:58
¿Cómo probar un método personalizado en PHP?
En el mundo del desarrollo de software, probar nuestros métodos personalizados es crucial para garantizar que nuestro código funcione correctamente y de manera consistente. Imagina que hemos desarrollado un sitio web o una aplicación, y queremos asegurar que todas las funcionalidades, incluyendo nuestros métodos personalizados, operen al 100%. En este artículo, exploraremos cómo puedes configurar y probar un método personalizado en PHP, utilizando el framework Laravel para un enfoque más estructurado.
¿Cuál es el proceso para configurar un test en Laravel?
Para comenzar, debemos entender cómo estructurar y organizar nuestros tests dentro del framework Laravel. Aquí te presento los pasos clave que debes seguir:
-
Crear un archivo de test: Empezamos asegurándonos de tener un archivo de test, por ejemplo,
PostTest.php. Dentro de este archivo incluimos nuestras pruebas organizadas. -
Definir el método de test: A cada test dentro de la clase le damos un nombre que empiece con la palabra 'test'. Esto es crucial, ya que Laravel y PHPUnit reconocen automáticamente estos métodos como pruebas.
-
Inicializar y configurar el objeto: Cada prueba generalmente involucra la creación de un objeto de la clase que estamos probando. En este caso, podrías estar manipulando un objeto del post donde quieres generar un enlace.
public function testHref()
{
$post = new Post();
$post->name = 'Proyecto en PHP';
}
¿Cómo se espera el resultado del método test?
Una vez configurado el entorno y definido el test, es el momento de especificar qué resultado estamos esperando del método en cuestión:
- Utilizar assertions: Un aspecto crítico es usar funciones de assertion. En el caso del método
href, esperamos que devuelva una URL formateada en minúsculas, separando las palabras con guiones.
$this->assertEquals('blog-proyecto-en-php', $post->href());
Aquí, assertEquals ayuda a verificar si el resultado que retorna el método es el esperado.
¿Cómo definir un método personalizado en Laravel?
Ahora que tenemos una prueba que falla porque el método href aún no existe, procedemos a crear ese método en la clase que estamos evaluando:
- Crear el método en el modelo: Agregamos el método
hrefen el modeloPost.
public function href()
{
return '/'. $this->getSlug();
}
- Implementar lógica personalizada: Dentro de este método podrías tener funcionalidades personalizadas, como generar un “slug” para la URL. El slug usualmente es generado utilizando el nombre del post en minúsculas y reemplazando espacios con guiones.
¿Por qué es importante duplicar código en los tests?
Puede parecer contraproducente al inicio, pero duplicar código en tus pruebas es esencial. Este enfoque permite:
- Facilitar el mantenimiento: Mantener fragmentos de código idénticos en tus tests aseguran consistencia. Si otro desarrollador desea entender tu lógica o realizar cambios, los tests servirán como una documentación clara y precisa.
- Verificar integridad: Al correr estos tests garantizamos que modificaciones futuras no rompan la funcionalidad existente.
Probar tus métodos personalizados es un paso para garantizar que tu código PHP sea robusto y esté libre de errores. Estas prácticas no solo te ahorran tiempo y estrés a largo plazo, sino que también fortalecen la calidad de tu software. Alienta a seguir investigando y aprendiendo sobre estos conceptos para perfeccionar tus habilidades de programación y testing.