Laravel Dusk
简介
WARNING
Pest 4 现在包含自动化浏览器测试,相比 Laravel Dusk 提供了显著的性能和可用性改进。对于新项目,我们建议使用 Pest 进行浏览器测试。
Laravel Dusk 提供了一个表达性强、易于使用的浏览器自动化和测试 API。默认情况下,Dusk 不需要你在本地计算机上安装 JDK 或 Selenium。相反,Dusk 使用独立的 ChromeDriver 安装。但是,你可以自由使用任何其他你希望的 Selenium 兼容驱动程序。
安装
首先,你应该安装 Google Chrome 并将 laravel/dusk Composer 依赖添加到你的项目中:
shell
composer require laravel/dusk --devWARNING
如果你手动注册 Dusk 的服务提供者,你应该永远不要在生产环境中注册它,因为这样做可能导致任意用户能够通过你的应用程序进行认证。
安装 Dusk 包后,执行 dusk:install Artisan 命令。dusk:install 命令将创建 tests/Browser 目录、一个示例 Dusk 测试,并为你的操作系统安装 Chrome Driver 二进制文件:
shell
php artisan dusk:install接下来,在应用程序的 .env 文件中设置 APP_URL 环境变量。此值应与你在浏览器中访问应用程序的 URL 匹配。
NOTE
如果你使用 Laravel Sail 管理本地开发环境,请同时查看 Sail 文档中关于配置和运行 Dusk 测试的内容。
管理 ChromeDriver 安装
如果你想安装与 Laravel Dusk 通过 dusk:install 命令安装的不同版本的 ChromeDriver,可以使用 dusk:chrome-driver 命令:
shell
# 为你的操作系统安装最新版本的 ChromeDriver...
php artisan dusk:chrome-driver
# 为你的操作系统安装指定版本的 ChromeDriver...
php artisan dusk:chrome-driver 86
# 为所有支持的操作系统安装指定版本的 ChromeDriver...
php artisan dusk:chrome-driver --all
# 安装与你的操作系统检测到的 Chrome / Chromium 版本匹配的 ChromeDriver 版本...
php artisan dusk:chrome-driver --detect