craigpaul/blitz-laravel

Laravel package for integrating with an internal load testing tool named Blitz

v0.5.3 2024-09-17 18:05 UTC

This package is auto-updated.

Last update: 2024-12-17 18:42:14 UTC


README

Latest Version on Packagist Software License Tests Total Downloads

Installation

You can install the package via composer:

composer require craigpaul/blitz-laravel

The package will automatically register itself, you will however have to explicitly enable it. To do so, update your .env file (or however you are managing environment variables for the environment in question) with the following variable.

BLITZ_ENABLED=true

Usage

To create a new test case, use the make:blitz Artisan command. Tests will be placed within the tests/Blitz directory:

php artisan make:blitz ExampleTest

Once the test has been generated, you may begin writing out your workflow using the scaffolded handle method.

Note

Unlike the way you would write multiple test cases with a framework like PHPUnit in Laravel, each class is it's own unique test case (or workflow).

Blitz provides a very fluent (and hopefully familiar) API for making HTTP requests to your application. There are both JSON and non-JSON methods matching all the regular HTTP verbs available for instructing Blitz on what requests to make to your application.

The same best practices you're used to in your everyday Laravel HTTP tests also apply here. You can begin by "setting up the world", meaning to create any seed data you want to exist for your test.

Important

This data is persisted and used in real time when executing the load tests against your application, so it is advised to model the data and requests based on expected real world usage.

Once you have your data set up, you can move onto making actual requests into your application. This follows the same structure as a typical Laravel HTTP test by calling methods such as get, post, put, patch, or delete (or their JSON counterparts).

Thats all there really is to setting up a basic load test with Blitz. From here, you will want to sign into your running instance of the Blitz UI (local or hosted) and set up the project to begin executing your load tests against whatever environment you desire.

Changelog

Please see CHANGELOG for more information on what has changed recently.

Testing

composer test

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see LICENSE for more information.