Configuración de Relaciones y Pruebas Unitarias en Laravel
Clase 4 de 23 • Curso de Desarrollo en Laravel con Test Driven Development
Contenido del curso
- 3

Instalación y configuración inicial de proyectos en Laravel
03:27 - 4

Configuración de Relaciones y Pruebas Unitarias en Laravel
07:52 - 5

Configuración de Relaciones en Laravel usando Testing
10:26 - 6

Protección de Rutas en Laravel con Middleware de Autenticación
10:22 - 7

Pruebas Automatizadas para Registro y Redirección en Base de Datos
10:17 - 8

Configuración de Actualización de Registros con Pruebas en PHP
11:19 - 9

Validación de Datos en Controladores: Configuración y Pruebas
05:37 - 10

Eliminación de Registros en Base de Datos con PHP y Tests
04:16
- 15

Formulario de Edición con Diseño y Tests en Laravel
09:41 - 16

Testing de Formularios en PHP: Creación y Validación de Vistas
07:24 - 17

Configuración de Controladores y Vistas en Laravel para el Área Pública
08:44 - 18

Diseño Web con Tailwind CSS: Mejora de Apariencia y Formato
06:15 - 19

Pruebas y Configuración de Seeders en Proyectos Laravel
08:32
¿Cómo se relacionan las tablas en un proyecto Laravel?
Comenzar un proyecto en Laravel requiere establecer relaciones entre tablas, fundamentales para desarrollar una aplicación robusta. Esto se logra a través del "testing", asegurando que el método específico funcione adecuadamente. En este caso, configuraremos la relación "HasMany" para asegurar que un usuario pueda tener varios repositorios.
¿Cómo crear un archivo de prueba en Laravel?
Para establecer y probar nuestras relaciones, primero debemos crear un archivo de prueba unitario. Esto se logra con el comando de Artisan para crear un test:
php artisan make:test UserTest --unit
Dentro de este archivo configuraremos una relación de que un usuario tiene muchos repositorios. Es crucial que el título del método en el test describa claramente la función que realiza, como en este caso HasMany.
¿Cómo instanciar un usuario y asociar repositorios?
El paso siguiente es crear un usuario y asegurarse de que puede tener múltiples repositorios. Para esto, emplearemos el método HasMany en el modelo de usuario.
public function test_user_has_many_repositories()
{
$user = User::factory()->create();
$this->assertInstanceOf("Illuminate\Database\Eloquent\Collection", $user->repositorios);
}
Este fragmento de código verifica si el método user->repositorios retorna una instancia de una colección de datos, es decir, múltiples repositorios.
¿Cómo crear el modelo y configurar la relación?
Ahora, debemos crear el modelo para los repositorios y configurar nuestra relación en el modelo de usuario.
- Crear el modelo de repositorio junto con su migración y fábrica:
php artisan make:model Repositorio -m -f
- Configurar la relación en el modelo
User.php:
public function repositorios()
{
return $this->hasMany(Repositorio::class);
}
Con este código, especificamos que un usuario puede tener múltiples repositorios.
¿Qué hacer si fallan las pruebas?
Usualmente, al ejecutar tus pruebas notarás errores derivados de configuraciones faltantes o incorrectas. Asegúrate de que estás utilizando el test case correcto. Si estás utilizando Laravel, es preferible usar el test case proporcionado por Laravel que integra phpUnit y simplifica ciertas configuraciones.
php artisan test
Al correr este comando, verificamos que nuestra configuración de relación entre usuario y repositorios funcione correctamente sin errores.
Incorporar esta configuración en tus proyectos te asegura que tienes una base sólida y testeada, permitiendo un desarrollo más eficiente y fluido. ¡Sigue aprendiendo y desarrollando tus habilidades en desarrollo de software!