nunomaduro/laravel-console-dusk
Run Laravel Dusk browser automation inside Artisan commands for Laravel or Laravel Zero. Configure screenshots/log paths, headless mode, and driver options to script and test real browser flows from the console.
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.
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"
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.
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
Do you like this project? Support it by donating
Laravel Console Dusk is an open-sourced software licensed under the MIT license.
How can I help you explore Laravel packages today?