craigpaul / blitz-laravel
Laravel package for integrating with an internal load testing tool named Blitz
Installs: 12 870
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ^8.1
- ext-fileinfo: *
- ext-json: *
Requires (Dev)
- orchestra/testbench: ^7.0|^8.0
- phpunit/phpunit: ^9.0
README
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.