atrapalo/phpunit-memory-and-time-usage-listener

此包最新版本(1.0.0)没有提供许可证信息。

PHPUnit 时间和内存使用情况监听器

1.0.0 2015-04-19 16:29 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:04:05 UTC


README

此PHPUnit监听器提供每个测试的时间、内存和内存峰值使用信息,通过参数配置了两个版本:

  • 一个是在测试套件结束时显示所有执行测试的信息。
  • 一个是你可以指定所有测量的阈值,并且只有当其中一个超过其阈值时才显示结果。

如果phpunit.xml中没有定义任何参数,则默认行为是显示所有结果。

可以在phpunit.xml文件中定义的参数有:

  • showOnlyIfEdgeIsExceeded (布尔值):默认值为false,如果将其设置为true,则建议设置其他三个可选参数。
  • executionTimeEdge (整数)(毫秒):如果将showOnlyIfEdgeIsExceeded设置为true,则需要此参数。默认值为100,表示每个测试的使用时间限制
  • memoryUsageEdge (整数)(字节):如果将showOnlyIfEdgeIsExceeded设置为true,则需要此参数。默认值为1024,表示每个使用内存的限制
  • memoryPeakDifferenceEdge (整数)(字节):如果将showOnlyIfEdgeIsExceeded设置为true,则需要此参数。默认值为1024,表示内存峰值之间的最大差值

安装

要使用此监听器,安装方法与使用composer安装其他包一样简单。我建议只将要求标记为dev。

require-dev{
    "atrapalo/phpunit-memory-and-time-usage-listener": "dev-master"
}

使用示例

无边界的监听器使用XML示例

    <listener class="\PhpunitMemoryAndTimeUsageListener\Listener\Measurement\TimeAndMemoryTestListener"/>

带边界的监听器使用XML示例

     <listeners>
         <listener class="\PhpunitMemoryAndTimeUsageListener\Listener\Measurement\TimeAndMemoryTestListener">
             <arguments>
                 <array>
                     <element key="showOnlyIfEdgeIsExceeded">
                         <boolean>true</boolean>
                     </element>
                     <element key="executionTimeEdge">
                         <integer>100</integer>
                     </element>
                     <element key="memoryUsageEdge">
                         <integer>1024</integer>
                     </element>
                     <element key="memoryPeakDifferenceEdge">
                         <integer>10240</integer>
                     </element>
                 </array>
             </arguments>
         </listener>
     </listeners>