Mahmoud Al-HabashOpen to new projects
  • WorkWork
  • ServicesServices
  • LabLab
  • WritingWriting
  • ContactContact
Amman--:--عربي
Writing/Laravel

Laravel Testing: Factory States and Relationships

Create complex test data easily with factory states and relationships.

24 December 20251 min readLaravelاقرأ بالعربية

On this page

  1. Factory States
  2. Create with Relationships
  3. For Relationships

Advanced factory techniques:

Factory States

php
public function active(): static
{
    return $this->state(fn (array $attributes) => [
        'is_active' => true,
    ]);
}

Create with Relationships

php
Post::factory()
    ->has(Comment::factory()->count(3))
    ->create();

For Relationships

php
Comment::factory()
    ->for(Post::factory())
    ->create();

Factories make testing with complex data structures simple.

All articles

Keep reading

  • Laravel Action Classes Pattern16 January 20261 min read
  • Laravel Action Classes: Single Responsibility16 January 20261 min read
  • Laravel API Rate Limiting16 January 20261 min read