Clover PHPUnit覆盖率报告包括不需要的文件的覆盖范围
作者:互联网
我刚刚在我的Jenkins工作中设置了CloverPHP.
我正在使用PHPUnit来生成三叶草报告,它似乎与显示该文件的覆盖率报告不同
/usr/share/php/SymfonyComponents/YAML/sfYamlInline.php
作为报告的一部分.我不确定它的来源,我的猜测是PHPUnit或XDebug包含它.显然这不是我自己的代码库的一部分,所以我对它不感兴趣.它影响了我的项目产生的整体指标.
有没有办法从报告中排除这个文件?
非常感谢,
NS
编辑
答案是使用phpunit xml配置文件,该文件可以包含过滤器黑名单.
我将在6个小时内正确回答我的问题(stackoverflow让我等了8个小时才回答我的问题!)
解决方法:
经过一些谷歌搜索我发现答案是为phpunit创建一个配置文件,您可以从代码覆盖率报告中排除特定的文件或目录.
“< filter>元素及其子元素可用于配置代码覆盖率报告的黑名单和白名单.”
<filter>
<blacklist>
<directory suffix=".php">/path/to/files</directory>
<file>/path/to/file</file>
<exclude>
<directory suffix=".php">/path/to/files</directory>
<file>/path/to/file</file>
</exclude>
</blacklist>
<whitelist addUncoveredFilesFromWhitelist="true">
<directory suffix=".php">/path/to/files</directory>
<file>/path/to/file</file>
<exclude>
<directory suffix=".php">/path/to/files</directory>
<file>/path/to/file</file>
</exclude>
</whitelist>
</filter>
然后使用标志调用PHPUnit:
phpunit -c config.xml
有关配置文件的更多信息,请访问:
http://www.phpunit.de/manual/current/en/appendixes.configuration.html
标签:php,jenkins,phpunit,code-coverage,clover 来源: https://codeday.me/bug/20190826/1729461.html