idearia/wp-tests

一个简单的类,用于在WordPress中运行PHPUnit测试。

2.0.1 2023-02-02 13:57 UTC

This package is auto-updated.

Last update: 2024-09-30 01:30:59 UTC


README

定义了类WordPressTestCase,用于在WordPress安装中运行PHPUnit测试,支持日志记录和多站点。

用法

  1. 使用composer require idearia/wp-tests --dev进行安装。
  2. 通过扩展Idearia\WpTests\WordPressTestCase来创建测试用例。
  3. 运行测试时,WordPress将自动加载。

请查看示例文件夹。您将找到

日志支持

  • 要将消息记录到屏幕,请调用self::print( $message )
  • 要将消息记录到文件,请调用self::log( $message )
  • 文件将以测试类的名称命名,并放置在子文件夹tests/logs中。
  • 除非您在测试用例中设置protected static $deleteLogFile = false;,否则每次运行时都会重置日志文件。
  • 通过logsPath环境变量自定义日志文件夹。
  • 有关进一步自定义,请参阅Loggable trait的文档。

多站点支持

默认情况下,测试将在主博客上运行。

要在不同的博客上运行测试,请将siteUrl环境变量添加到您的phpunit.xml文件中

<php>
  <env name="siteUrl" value=""/>
</php>

然后,您可以自由地设置siteUrl,方法如下

  • dotenv文件中。
  • 当您运行phpunit时:siteUrl=http://example.com/blog phpunit
  • 在shell级别:export siteUrl=http://example.com/blog
  • 在您的测试用例设置中:putenv( 'siteUrl=http://example.com/blog' );
  • 在phpunit.xml中硬编码。

自定义WordPress路径

如果您的WordPress安装不是标准的,您可以通过设置wordPressPath环境变量来指定自定义的WordPress路径。您可以使用相对路径和绝对路径。

phpunit.xml中设置wordPressPath

<php>
    <env name="wordPressPath" value="/path/to/wordpress/"/>
</php>