aliameen/laravel-test-helpers

PHPUnit testing helpers for Laravel - simplify mocking

Maintainers

Package info

github.com/aliameen91/laravel-test-helpers

pkg:composer/aliameen/laravel-test-helpers

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.0 2026-02-16 21:10 UTC

This package is auto-updated.

Last update: 2026-04-16 21:39:17 UTC


README

PHPUnit testing helpers for Laravel. Stop writing repetitive mocking code.

Installation

composer require aliameen/laravel-test-helpers --dev

Usage

Add the trait to your test:

use AliAmeen\LaravelTestHelpers\TestHelpers;

class MyTest extends TestCase
{
    use TestHelpers;
}

Methods

Mock Request

$this->getRequestMockWith([
    'email' => 'test@example.com',
    'name' => 'John'
]);

// $request->input('email') returns 'test@example.com'

Mock Services

$this->mockClassWith(UserService::class, [
    'findById' => $user,
    'isActive' => true
]);

// app(UserService::class)->findById(1) returns $user

Fluent Mocking

$this->mockClassWith(Builder::class, [
    'setName' => 'SELF_OBJECT_RETURN',
    'save' => true
]);

// $builder->setName('x')->save() works

Other Helpers

// Set private properties
$this->setPrivateProperty($object, MyClass::class, 'prop', 'value');

// Compare arrays (ignore key order)
$this->assertArraySimilar($expected, $actual);

// Parse JSON response
$data = $this->parsedJsonResponse();

Requirements

  • PHP 7.2+
  • Laravel 5.8+

License

MIT