winter/wn-dusk-plugin

将 Laravel Dusk 浏览器测试集成到 Winter CMS 中。

资助包维护!
wintercms
Open Collective

安装: 141

依赖项: 0

建议者: 0

安全: 1

星标: 2

关注者: 5

分支: 2

开放问题: 0

类型:winter-plugin

v2.1.0 2024-04-11 03:31 UTC

This package is auto-updated.

Last update: 2024-09-11 14:48:31 UTC


README

将 Laravel Dusk 浏览器测试集成到 Winter CMS 中,为 Winter CMS 和插件开发者提供工具,通过虚拟浏览器在功能完整的 Winter CMS 实例上运行自动化测试。

注意:此插件仅用于开发目的。配置不当,可能会允许用户绕过身份验证并以任何用户身份登录。应将此插件指定为 开发依赖项(即 require-dev)。

入门

要安装插件,您可以通过 Winter CMS 市场place 安装,或者使用 Composer 安装。

composer require --dev winter/wn-dusk-plugin

然后,运行迁移以确保插件已启用

php artisan winter:up

要运行浏览器测试,您必须在运行测试的机器上安装 Chrome WebDriver 并安装 Google Chrome 浏览器。可以通过运行以下命令安装 WebDriver:

php artisan dusk:chrome-driver

运行测试

默认情况下,浏览器测试配置为针对由内置 Laravel Web 服务器提供服务的网站运行测试。您可以通过运行以下命令启动此服务器:

php artisan serve

要启动浏览器测试,请运行

php artisan dusk

这将执行 Winter CMS 安装上所有启用的插件中的所有可用浏览器测试。如果您只想运行一个插件的测试,您可以添加插件代码作为参数。

php artisan dusk Acme.Blog

在运行测试后,您可以执行以下命令来重新运行失败的测试

php artisan dusk:fails

为您的插件创建浏览器测试

Dusk 插件使您轻松地为您的插件创建浏览器测试。

浏览器测试类应位于您的插件的 tests/browser 文件夹中。每个测试类文件应以 Test.php 结尾,以表明它是一个测试用例的类,并应扩展 Winter\Dusk\Classes\BrowserTestCase 类。

例如,一个博客插件可能希望创建一个包含以下内容的 BlogTest.php 文件:

<?php namespace Acme\Blog\Tests\Browser;

use Winter\Dusk\Classes\BrowserTestCase;

class BlogTest extends BrowserTestCase
{
    public function testPost()
    {
        // the test to run
    }
}

类中的每个测试方法应以 test 开头,以表示它是测试用例。

要运行您的插件的浏览器测试,只需运行以下命令:

php artisan dusk Acme.Blog