
Creando un panel de control desde cero con Laravel II
Hola, ¿Qué tal te ha ido? ¡Te doy la bienvenida de vuelta! 🙋♂️.
En este nuevo post de la serie vamos a adentrarnos en el mundo de los tests con PHPUnit haciendo algunas configuraciones y aparte crearemos unos seeders para rellenar nuestra base de datos de forma automatizada en nuestros tests o cuando cambiemos la estructura de la misma.
¿Merece la pena hacer tests?
Rotundamente sí 👍. Cuando estás haciendo cosas sencillas sobre todo cuando estás aprendiendo puede dar la sensación de estar perdiendo el tiempo o que es un poco inútil pero cuando te enfrentas a aplicaciones reales con clientes que demandan cambios, compañeros tocando el mismo código o el tan doloroso proceso de actualización de tu framework o librerías, créeme siempre en ese mismo instante cuando tienes ya el pollo encima te vas a decir a tí mismo ¿Porqué no hice los tests?. Y es que aparte de esto, como veremos en el tutorial en video, hacer seeders y test nos va a hacer ganar mucho tiempo entre más compleja se vuelva nuestra aplicación al no hacer casi ninguna comprobación a mano.
Ahora, ¿Esto significa que con los tests no va a haber errores? Por supuesto que no 🙅♂️, solo te vas a asegurar de que funciona correctamente lo que tengas contemplado en los tests. Vamos a comprobarlo en el tutorial:
Seeding & Testing
php artisan test
php artisan db:seed
php artisan migrate --seed
php artisan migrate:fresh --seed
protected function setUp(): void
{
// first include all the normal setUp operations
parent::setUp();
// now de-register all the roles and permissions by clearing the permission cache
$this->app->make(\Spatie\Permission\PermissionRegistrar::class)->forgetCachedPermissions();
}
protected function setUp(): void
{
// reset cached roles and permissions
app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
}
use Opcodes\LogViewer\Facades\LogViewer;
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
LogViewer::auth(function ($request) {
// return true to allow viewing the Log Viewer.
});
}
También te dejo el enlace al repositorio.
¡Un saludo y nos vemos pronto en el próximo post! 🙋♂️