包含与排除文件
最后更新于:2022-04-01 03:46:14
# 包含与排除文件
默认情况下,代码覆盖率报告中包含(且只包括)所有内含至少一行已执行代码的源文件。
默认情况下,在生成代码覆盖率报告时会应用一个特定的*黑名单*来排除某些文件。这个黑名单中包含了 PHPUnit 本身及其所依赖的所有组件的相应源文件。
用*白名单*代替上面提到的黑名单是一种良好的习惯。
可以在 PHPUnit 的配置信息中设置 `addUncoveredFilesFromWhitelist="true"` 来将白名单中包含的所有文件全部加入到代码覆盖率报告中(参见[the section called “为代码覆盖率包含或排除文件”](# "为代码覆盖率包含或排除文件"))。这样可以把完全没有测试到的文件也一并包含到报告中。如果需要知道这些未被覆盖文件中有哪些行是可执行的,需要同时在 PHPUnit 的配置信息中设置 `processUncoveredFilesFromWhitelist="true"`(参见[the section called “为代码覆盖率包含或排除文件”](# "为代码覆盖率包含或排除文件"))。
>[info] ### Note
> 请注意,当设置了 `processUncoveredFilesFromWhitelist="true"` 时将对源代码文件进行载入,这在某些情况下可能导致问题,比如,源代码文件包含有处于类或者函数作用域之外的代码。