如何从phpunit覆盖率报告中排除作曲家自动加载器文件(使用netbeans / windows)

时间:2018-03-01 21:13:00

标签: phpunit code-coverage

enter image description here

我的'测试项目'只包含Application.php和ApplicationTest.php,但phpunit也收集有关composer autoloader文件的覆盖率信息,这是错误的。如何从覆盖率报告中排除自动加载器文件?

2 个答案:

答案 0 :(得分:4)

在为代码覆盖率创建配置时,您几乎总是将phpunit.xml文件中的“白名单”设置为仅涵盖主要源文件 - 这也可以加快测试运行速度,因为它不必也是运行供应商/目录中所有库文件的代码覆盖率(因为这可能需要时间)。

<filter>
  <whitelist processUncoveredFilesFromWhitelist="true"
             addUncoveredFilesFromWhitelist="false">
    <!-- only collect code coverage in src/**/*.php files -->
    <directory suffix=".php">./src</directory>
    <exclude>
       <!-- directories/files to not cover (within src/) -->
       <directory suffix=".php">./src/*/*Bundle/Resources</directory>
       <directory suffix=".php">./src/*Bundle/Resources</directory>
       <directory suffix=".php">./src/tests/</directory>
    </exclude>
  </whitelist>
</filter>

答案 1 :(得分:3)

配置白名单,不要向其添加自动加载器。