Imagen destacada del post -Creando un panel de control desde cero con Laravel II-

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! 🙋‍♂️