飞行砧/punit-tools

PHPUnit 扩展

0.1.4 2024-09-11 15:19 UTC

This package is auto-updated.

Last update: 2024-09-11 13:20:08 UTC


README

PHPUnit 扩展

安装

composer require --dev flying-anvil/punit-tools

特性

特性描述
SlowTestReport跟踪测试所用时间并报告最慢的测试
您可以定义慢测试的阈值,无论是全局的、整个测试类还是单个测试方法

慢测试

配置

<extensions>
  <extension class="\FlyingAnvil\PunitTools\SlowTestReport">
    <arguments>
      <!-- default threshold (in ms) -->
      <integer>100</integer>
      <!-- report length -->
      <integer>10</integer>
      <!-- report formatter (default | FQCN) -->
      <string>default</string>
      <array>
        <element key="useColors">
          <string>auto</string> <!-- always | never | auto -->
        </element>
      </array>
    </arguments>
  </extension>
</extensions>

报告格式化器

您可以通过指定其完全限定名(FQCN)来自定义报告格式化器。它必须实现 \FlyingAnvil\PunitTools\SlowTest\ReportFormatter\ReportFormatterInterface,并且必须可以通过不带参数的 new 关键字实例化。

颜色

当使用 auto 时,如果是在交互会话中运行、通过管道输出或者自动运行测试时,会使用颜色。

慢阈值属性

使用此属性来覆盖单个测试或测试类的阈值。其值是新阈值(毫秒)。

#[SlowThreshold(1100)]
public function testThatIsExpectedToBeSlow(): void
{
    sleep(1);
}