pantheon-systems / wpunit-helpers
统一脚本,用于安装和运行自动化的 WP 单元测试。
Requires
- composer-plugin-api: ^2.0
Requires (Dev)
README
Composer 插件,提供统一脚本,用于安装和运行自动化的 WP 单元测试。
这是什么?
这是一组可以在 WordPress 插件或主题仓库中使用,以使用基于 PHPUnit 的 WP 单元测试框架运行自动化测试的脚本。Composer 插件会将这些脚本安装到依赖项目的 bin
目录中,允许你将辅助脚本添加到你的 composer.json
。
此包与 WordPress 社区中存在多年的传统 install-wp-tests.sh
脚本在本质上有所不同,因为它通过删除该工作流程的一些特性并使用基于 WP-CLI 的方法来替换它们。
要求
在开始使用这些脚本之前,你必须安装以下内容
此外,如果你打算在 CI 环境中运行测试,你将需要有一些现代 MySQL 兼容的数据库服务器可用(MariaDB、MySQL 等)。
包含什么?
install-wp-tests.sh
- 一个标准化的脚本,用于安装 WP 单元测试框架。install-local-tests.sh
- 一个辅助脚本,用于在本地安装 WP 单元测试。有关更多信息,请参阅 本地测试。phpunit-test.sh
- 一个辅助脚本,用于运行 WP 单元测试,适用于 CI 环境。helpers.sh
- 由其他脚本使用的辅助函数集合。
安装
使用 Composer 将此包作为开发依赖项安装
composer require --dev pantheon-systems/wpunit-helpers
在安装过程中,Composer 插件会将脚本复制到依赖项目的 bin
目录。然后,你可以将这些脚本添加到你的 composer.json
。
{ "scripts": { "phpunit": "phpunit --do-not-cache-result", "test": "@phpunit", "test:install": "bin/install-local-tests.sh --skip-db=true", "test:install:withdb": "bin/install-local-tests.sh" } }
本地测试
install-local-tests.sh
脚本高度可配置,以允许各种本地环境设置。任何可以传递给 install-wp-tests.sh
的参数都已在 install-local-tests.sh
中设置为可选标志。默认情况下,不带标志的脚本将假设应该创建一个新数据库,其名称为 root
,没有密码。
标志
--skip-db
如果设置且为 true
,则此标志将跳过数据库创建步骤。如果已使用本地数据库设置,则此操作很有用。这替换了(现已弃用)的 --no-db
标志。
--dbname
此标志将设置要创建的数据库的名称。默认值为 wordpress_test
。
--dbuser
此标志将设置要创建的数据库用户的用户名。默认值为 root
。
--dbpass
此标志将设置要创建的数据库用户的密码。默认值为空字符串。
--dbhost
此标志将设置要创建的数据库的主机。默认值为 127.0.0.1
。
--wpversion
此标志将设置要安装的 WordPress 版本。默认值为 latest
。在这里使用 nightly
将使用最新的 WordPress 夜间构建。
--tmpdir
此标志将设置用于 WordPress 安装的临时目录。默认值为 /tmp
。