Skip to content

Factory

Gambaran Umum

Factory menghasilkan instance model palsu untuk pengujian dan pengembangan. Sutomo menggunakan pola Eloquent Factory Laravel, yang diorganisir berdasarkan domain. Setiap factory menentukan nilai bawaan yang masuk akal menggunakan Faker.

Digunakan di: Pengujian (Model::factory()->create()), Seeder dummy, Demo fitur

Struktur Folder

database/factories/
├── UserFactory.php
├── ContactFactory.php
├── Academic/
│   └── AnnouncementFactory.php
├── Educator/
│   └── TeacherFactory.php
├── Institution/
│   └── SchoolFactory.php
├── Platform/
│   ├── Approval/
│   ├── Bulletin/
│   ├── ContactMessage/
│   ├── DocumentType/
│   ├── Employee/
│   ├── Gender/
│   ├── Onboarding/
│   ├── Pipeline/
│   ├── Rating/
│   ├── Stage/
│   └── Template/
├── Recruitment/
│   ├── ApplicantFactory.php
│   ├── CandidateEducationFactory.php
│   ├── CandidateExperienceFactory.php
│   ├── CandidateFactory.php
│   ├── VacancyFactory.php
│   └── VacancyStateFactory.php
└── Support/

Pola-Pola

1. Factory Standar

Setiap factory terhubung ke satu model dengan atribut bawaan menggunakan Faker.

2. UserFactory dengan Kata Sandi Bersama

Menyimpan hash kata sandi bersama sehingga semua pengguna yang dihasilkan menggunakan kata sandi yang sama untuk pengujian.

3. State Kustom

Gunakan state factory untuk variasi (misalnya, pengguna belum terverifikasi).

4. Organisasi Domain

Factory dikelompokkan berdasarkan domain yang sesuai dengan namespace model.

Berkas Utama

database/factories/UserFactory.php
database/factories/Institution/SchoolFactory.php
database/factories/Recruitment/CandidateFactory.php
database/factories/Platform/Gender/GenderFactory.php