v1.3.0
v1.3.0 — Cloud Execution, Stages, Target & Region Support
What's New in v1.3.0
Features
Cloud Execution
Run load tests on VoltTest Cloud directly from Laravel:
// Via Facade
VoltTest::target('https://api.example.com');
VoltTest::cloud();
$result = VoltTest::run();# Via Artisan
php artisan volttest:run LoginTest --cloud- API key generated from volt-test.com (starts with
vt_), configured viaVOLTTEST_API_KEYin.env - Enable via CLI flag (
--cloud), config (VOLTTEST_CLOUD_ENABLED=true), or programmatically - Interactive conflict handling when a test name already exists
- Custom conflict resolution via
setOnConflictPrompt()
Stages Support
Define ramped load profiles with multiple stages:
VoltTest::stage('1m', 50) // Ramp to 50 VUs
->stage('5m', 100) // Ramp to 100 VUs
->stage('1m', 0); // Ramp downphp artisan volttest:run LoginTest --stage=1m:50 --stage=5m:100 --stage=1m:0- Stages are mutually exclusive with
virtual_users/duration/ramp_up - Configurable via config file, Artisan command, or programmatically
Target URL Configuration
Set the target URL explicitly with the new target() method:
$manager->target('https://api.example.com'); // Default 30s idle timeout
$manager->target('https://api.example.com', '10s'); // Custom idle timeoutphp artisan volttest:run LoginTest --target=https://api.example.com- Available via Facade:
VoltTest::target('https://api.example.com') - Auto-falls back to
base_urlconfig iftarget()is not called - Generated test stubs (
volttest:make) now includetarget()with the configuredbase_url
Region Distribution
Distribute load across multiple geographic regions in cloud mode:
VoltTest::regions([
'us-east-1' => 60,
'eu-west-1' => 40,
]);php artisan volttest:run LoginTest --cloud --region=us-east-1:60 --region=eu-west-1:40- Weights must sum to 100
- Configurable via config file, CLI, or programmatically
Name & Description Setters
Update test name and description programmatically:
VoltTest::name('My Custom Test')
->description('Testing the checkout flow');Enhancements
- Default load profile — when no
--usersor--stageis provided, defaults to 10 virtual users resetLoadProfile()— reset load settings when switching to stages in test classes- Improved type safety in
RunVoltTestCommandwith nullable return types
Dependencies
- Requires VoltTest PHP SDK
^1.2
Full Changelog: v1.2.0...v1.3.0