nunomaduro / laravel-console-dusk
Laravel Console Dusk allows the usage of Laravel Dusk in Laravel/Laravel Zero artisan commands.
Fund package maintenance!
nunomaduro
www.paypal.com/paypalme/enunomaduro
Installs: 44 357
Dependents: 6
Suggesters: 0
Security: 0
Stars: 150
Watchers: 6
Forks: 21
Open Issues: 7
Requires
- php: ^8.2
- illuminate/console: ^11.4
- illuminate/support: ^11.4
- laravel/dusk: ^8.2
- nunomaduro/laravel-console-task: ^1.9
Requires (Dev)
- laravel/pint: ^1.17
Suggests
- phpunit/phpunit: Required to perform browser test assertions.
README
About Laravel Console Dusk
Laravel Console Dusk was created by, and is maintained by Nuno Maduro, and allows the usage of Laravel Dusk in Laravel/Laravel Zero artisan commands.
Installation
Requires PHP 8.2+
Require Laravel Console Dusk using Composer:
composer require nunomaduro/laravel-console-dusk
The package provide a config file that allows you to configure some options.
return [ /* |-------------------------------------------------------------------------- | Laravel Console Dusk Paths |-------------------------------------------------------------------------- | | Here you may configure the name of screenshots and logs directory as you wish. */ 'paths' => [ 'screenshots' => storage_path('laravel-console-dusk/screenshots'), 'log' => storage_path('laravel-console-dusk/log'), ], /* | -------------------------------------------------------------------------- | Headless Mode | -------------------------------------------------------------------------- | | When false it will show a Chrome window while running. Within production | it will be forced to run in headless mode. */ 'headless' => true, /* | -------------------------------------------------------------------------- | Driver Configuration | -------------------------------------------------------------------------- | | Here you may pass options to the browser driver being automated. | | A list of available Chromium command line switches is available at | https://peter.sh/experiments/chromium-command-line-switches/ */ 'driver' => [ 'chrome' => [ 'options' => [ '--disable-gpu', ], ], ], ];
You can publish the config file using the following artisan command:
php artisan vendor:publish --provider="NunoMaduro\LaravelConsoleDusk\LaravelConsoleDuskServiceProvider" --tag="config"
Usage
class VisitLaravelZeroCommand extends Command { /** * Execute the console command. * * @return void */ public function handle() { $this->browse(function ($browser) { $browser->visit('http://laravel-zero.com') ->assertSee('100% Open Source'); }); } }
Check how use Laravel Dusk here.
Contributing
Thank you for considering to contribute to Laravel Console Dusk. All the contribution guidelines are mentioned here.
You can have a look at the CHANGELOG for constant updates & detailed information about the changes. You can also follow the twitter account for latest announcements or just come say hi!: @enunomaduro
Support the development
Do you like this project? Support it by donating
License
Laravel Console Dusk is an open-sourced software licensed under the MIT license.