rainlab / dusk-plugin
十月 CMS 的浏览器测试,由 Laravel Dusk 提供支持。
Requires
- composer/installers: ~1.0
- laravel/dusk: ^7.4
README
十月 CMS 的浏览器测试,由 Laravel Dusk 提供支持。
安装说明
要使用 Composer 安装,请在项目根目录下运行
composer require rainlab/dusk-plugin
如果使用的是最新版本的 Chrome,请为您所在的操作系统安装最新版本的 ChromeDriver。
php artisan dusk:chrome-driver
否则,检查您已安装的 Chrome 浏览器版本,并为您所在的操作系统安装特定版本的 ChromeDriver。
php artisan dusk:chrome-driver 86
定义测试
要创建第一个测试,请在 tests/browser 文件夹内创建一个新的类。以下代码将验证后端面板并再次注销。
// File: plugins/october/test/tests/browser/AuthenticationTest.php // class AuthenticationTest extends BrowserTestCase { public function testAuthentication() { $this->browse(function($browser) { $browser ->visit('/admin') ->waitForLocation('/admin/backend/auth/signin') ->assertTitleContains('Administration Area |') ->type('login', env('DUSK_ADMIN_USER', 'admin')) ->type('password', env('DUSK_ADMIN_PASS', 'admin')) ->check('remember') ->press('Login'); $browser ->waitForLocation('/admin') ->assertTitleContains('Dashboard |') ->click('#layout-mainmenu .mainmenu-account > a') ->clickLink('Sign Out'); $browser ->waitForLocation('/admin/backend/auth/signin') ->assertTitleContains('Administration Area |'); }); } }
创建环境文件
.env.dusk 环境文件可用于 Dusk 特定配置。建议在此文件中包含要测试的应用程序 URL。
APP_URL=http://mylocalsite.dev/
运行测试
使用 test:dusk
artisan 命令运行插件代码的 dusk 测试(第一个参数)。
php artisan test:dusk <PLUGIN CODE>
以下运行 October.Test 插件的测试。
php artisan test:dusk october.test
使用 --browse
选项启用交互模式。
php artisan test:dusk october.test --browse
使用 --filter
选项运行单个测试,其值为测试类名。
php artisan test:dusk october.test --filter=PeopleTest
端到端示例
按照以下说明运行测试。
-
安装最新版本的 Chrome 浏览器
-
安装 October CMS 的最新副本
-
安装此插件
composer require rainlab/dusk-plugin
-
安装最新 ChromeDriver
php artisan dusk:chrome-driver
-
安装 Test 插件
php artisan plugin:install October.Test --from=https://github.com/octobercms/test-plugin
-
创建文件
.env.dusk
并在文件内包含APP_URL=http://yourlocaldev.tld
-
运行测试
php artisan test:dusk october.test --browse
另请参阅
许可
此插件是 October CMS 平台官方扩展,如果您拥有平台许可,则可以免费使用。有关详细信息,请参阅EULA 许可证。