Factories y Seeders para pruebas en Laravel
Laravel proporciona Factories y Seeders para generar datos de prueba de manera sencilla y eficiente. Los Factories te permiten definir conjuntos de atributos para tus modelos, mientras que los Seeders te permiten poblar tu base de datos con datos de prueba utilizando esos Factories. Esto facilita la creación de pruebas que requieren datos de prueba consistentes y realistas.
Conceptos clave
- Factories: Clases que definen conjuntos de atributos para modelos.
- Seeders: Clases que utilizan Factories para poblar la base de datos con datos de prueba.
- Generación de datos aleatorios: Laravel utiliza Faker para generar datos aleatorios y realistas.
- Estado de modelos: Los Factories permiten definir estados para los modelos, como "activo" o "inactivo".
Utilizar Factories y Seeders en tus pruebas permite crear un entorno de prueba consistente y realista, lo que facilita la escritura de pruebas más efectivas y mantenibles.
Ejemplo de Factory y Seeder
// database/factories/UsuarioFactory.php namespace Database\Factories; use App\Models\Usuario; use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Support\Str; class UsuarioFactory extends Factory { protected $model = Usuario::class; public function definition() { return [ 'nombre' => $this->faker->name, 'email' => $this->faker->unique()->safeEmail, 'email_verified_at' => now(), 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password 'remember_token' => Str::random(10), ]; } } // database/seeders/UsuarioSeeder.php namespace Database\Seeders; use App\Models\Usuario; use Illuminate\Database\Seeder; class UsuarioSeeder extends Seeder { public function run() { Usuario::factory()->count(50)->create(); } }
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias