codewithdennis / filament-tests
一个创建针对您的丝材资源定制的PEST测试的包
Requires
- php: ^8.1
- illuminate/contracts: ^10.0|^11.0
- pestphp/pest-plugin-livewire: ^2.1
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.14
- nunomaduro/collision: ^7.8
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
This package is auto-updated.
Last update: 2024-09-07 10:35:03 UTC
README
一个创建针对您的丝材组件定制的PEST测试的包。
重要
由于两位活跃的维护者因工作承诺和其他责任无法投入时间,该项目目前处于暂停状态。然而,我们鼓励社区中的任何人贡献并帮助保持项目活力。您的努力将对维持其势头产生重大影响。
早期开发
此包仍在早期开发阶段。一些功能可能尚未提供,或者可能无法按预期工作。如果您遇到任何问题,请在此存储库中创建一个问题。
注意
此包尚未准备用于生产,使用风险自负。⚠️
安装
您可以通过Composer安装此包
composer require codewithdennis/filament-tests --dev
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="filament-tests-config"
需求
此包需要Filament v3或更高版本才能运行。
此包生成PestPHP测试,请确保您已在项目中安装它。您可以通过运行以下命令来安装它
composer require pestphp/pest --dev --with-all-dependencies
请确保您还安装了以下插件
composer require pestphp/pest-plugin-livewire --dev
composer require pestphp/pest-plugin-laravel --dev
使用方法
您可以通过运行以下命令创建一个新测试
支持的名称格式如下:
blog
、Blog
、BlogResource
php artisan make:filament-test BlogResource
您还可以传递一个以逗号分隔的资源名称列表,以一次性创建多个资源的测试
php artisan make:filament-test "BlogResource, PostResource"
如果您未指定资源名称,系统将提示您选择一个或多个资源以创建测试。
php artisan make:filament-test
选项
测试
测试按需生成,并根据您正在生成测试的组件进行定制。例如,如果资源组件没有任何可排序的列,则不会生成排序测试。
可用测试
可用测试列表 (46) ✔️
- 它可以渲染注册页面
- 它可以渲染密码重置页面
- 它可以渲染登录页面
- 它可以渲染创建页面
- 它有创建表单
- 创建表单中有一个禁用字段
- 它在创建表单中有一个字段
- 它在创建表单中有一个隐藏字段
- 它可以渲染编辑页面
- 它可以在编辑页面渲染关系管理器
- 编辑页面上的关系管理器具有正确的表头
- 编辑页面上的关系管理器具有正确的表描述
- 它可以在编辑页面上的关系管理器中渲染列
- 它不能在编辑页面上的关系管理器中渲染列
- 编辑页面上的关系管理器上方有正确的描述
- 编辑页面上的关系管理器下方有正确的描述
- 编辑表单中有一个字段
- 编辑表单中有一个隐藏字段
- 编辑页面上的关系管理器有一个列
- 编辑页面上的关系管理器有额外属性
- 它可以在编辑页面上的关系管理器中搜索列
- 它可以在编辑页面上的关系管理器(单独)搜索列
- 在编辑页面的关系管理器上具有带有正确选项的选择列
- 可以在编辑页面的关系管理器上排序列
- 可以在编辑页面的关系管理器索引页面上列出记录
- 可以在编辑页面的关系管理器索引页面上以分页方式列出记录
- 可以渲染视图页面
- 可以在视图页面上渲染关系管理器
- 在视图页面的关系管理器上具有正确的表标题
- 在视图页面的关系管理器上具有正确的表描述
- 可以在视图页面的关系管理器上渲染列
- 不能在视图页面的关系管理器上渲染列
- 在视图页面的关系管理器上具有正确的上方描述
- 在视图页面的关系管理器上具有正确的下方描述
- 在视图表单上有一个字段
- 在视图表单上有一个隐藏字段
- 在视图页面的关系管理器上有一个列
- 在视图页面的关系管理器上有额外属性
- 可以在视图页面的关系管理器上搜索列
- 可以在视图页面的关系管理器(单独)搜索列
- 在视图页面的关系管理器上具有带有正确选项的选择列
- 可以在视图页面的关系管理器上排序列
- 可以在视图页面的关系管理器索引页面上列出记录
- 可以在视图页面的关系管理器索引页面上以分页方式列出记录
- 具有编辑表单
- 在索引页面上有表头操作
- 不能在索引页面上渲染表头操作
- 可以在索引页面上渲染表头操作
- 可以在索引页面上列出记录
- 可以在索引页面上以分页方式列出记录
- 可以渲染索引页面
- 默认情况下不能显示已删除的记录
- 具有正确的表描述
- 具有正确的表标题
- 可以删除记录
- 可以强制删除记录
- 可以软删除记录
- 具有表操作
- 可以复制记录
- 可以恢复记录
- 具有表操作的正确URL
- 具有表操作的正确URL,并在新标签页中打开
- 可以批量删除记录
- 可以批量强制删除记录
- 可以批量删除记录
- 具有表批量操作
- 可以批量恢复记录
- 可以批量软删除记录
- 不能渲染列
- 具有正确的上方描述
- 具有正确的下方描述
- 具有列
- 具有额外属性
- 可以渲染列
- 可以搜索列
- 可以单独按列搜索
- 具有正确的选项
- 可以排序列
- 可以重置表格过滤器
- 可以渲染视图页面
发布占位符
您可以通过将它们发布到您的项目来自定义占位符
php artisan vendor:publish --tag="filament-tests-stubs"
运行包测试
💡 在运行测试之前,请确保在
tests/Pest.php
中取消注释Illuminate\Foundation\Testing\RefreshDatabase::class
。此外,请确保有一个有效的数据库连接的
.env.testing
文件,或者在不注释phpunit.xml
文件中的DB_CONNECTION
和DB_DATABASE
值的情况下。
您可以通过运行以下命令正常运行测试
vendor/bin/pest
您可以选择只运行此包的测试,通过运行以下命令
vendor/bin/pest --group=filament-tests
您也可以通过运行以下命令来运行所有测试,除了这个包的测试:
vendor/bin/pest --exclude-group=filament-tests
额外的分组选项
您可以将上述任何组添加到
--exclude-group
或--group
中,以包含或排除它们从测试运行中。您可以用逗号分隔多个组。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。