iambrianreich/ wordpress-testcase
PHPUnit 扩展,用于简化 WordPress 扩展的测试。
v1.0.0
2023-03-16 03:02 UTC
Requires
- php: >=8.0
- phpunit/phpunit: ^9.6
- squizlabs/php_codesniffer: 3.*
- yoast/phpunit-polyfills: ^1.0
This package is auto-updated.
Last update: 2024-09-16 06:44:56 UTC
README
本项目提供自定义的 TestCase
类和 Constraints
,使得使用 PHPUnit 进行 PHP 扩展的单元测试更加简单。
本项目旨在与 WP-CLI 指令配合使用,以设置PHPUnit 测试 WordPress,它不替代或取代它们。
安装
composer require iambrianreich/wordpress-testcase
使用方法
您可以直接使用本项目定义的 Constraint
类,或者扩展 BR\WordPress\TestCase\PHPUnit\TestCase
,它通过 assert*()
方法公开约束,允许您轻松验证您的扩展与 WordPress 的集成。
<?php /** * Tests my plugin! * * Assumes you've correctly setup WordPress PHPUnit tests using WP-CLI so * when this TestCase is executed, your plugin has already run and registered * all of it's customizations with WordPress core. */ class MyPluginTest extends BR\WordPress\TestCase\PHPUnit\TestCase { public function testRegistersTheWidgetsPostType() { $this->assertPostTypeExists('widgets'); } }
致谢
应得的赞誉
- 插件集成测试 | WP-CLI:这是官方的源材料,解释了如何为插件设置 PHPUnit 单元测试。没有这个基础,本项目毫无用处。
- r/ProWordPress:当我询问 他们如何进行单元测试 时,ProWordPress 社区的人们提供了极大的帮助。
许可证
MIT 许可证
版权所有 (c) 2023 Brian Reich
特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人免费使用该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许获得软件的人进行上述操作,前提是遵守以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论源于合同、侵权或其他行为,包括但不限于从软件或软件的使用或操作中产生、源于或与此有关。