我们正在努力从使用phpunit的覆盖率报告中获得所需的结果。
以前,我们只为捕获与其相关的单元测试的文件的代码覆盖率(我相信这是白名单为空时的默认设置)。
现在,我们希望有一个覆盖报告,其中包括我们已经测试过的文件,以及一个或两个特定的目录(其中的文件覆盖率为0% )。这将为我们提供更现实的统计数字。
我们使用了一个xml配置文件来尝试完成这一任务:
<filter>
<whitelist processUncoveredFilesFromWhitelist="true">
<directory suffix=".php">php/lib/</directory>
</whitelist>
<blacklist>
<directory suffix=".php">/usr/share/php/SymfonyComponents/YAML</directory>
</blacklist>
</filter>但是,此配置现在只包含白名单中指定目录的覆盖率报告。它没有捕获我们编写的单元测试所针对的其他文件的覆盖率。
如何实现包含以下内容的代码覆盖率配置:
( 1)所有已经具有与其关联的单元测试的文件
2)其他可配置目录
发布于 2012-07-26 21:44:40
下面是一个示例,说明我们使用什么来覆盖测试中没有涵盖的目录。本节介绍了应用程序。我们有不同的文件扩展名,因此目录后缀示例也为您提供。
<!-- Add files not covered with tests into Code Coverage Analysis -->
<filter>
<whitelist addUncoveredFilesFromWhitelist="true">
<directory suffix=".class">.</directory>
<directory suffix=".fn">.</directory>
<directory suffix=".php">lib/UTIL</directory>
<exclude>
<file>lib/UTIL/AJAX.class</file>
<file>lib/UTIL/GetDump.fn</file>
<directory>ExternalLibraries</directory>
</exclude>
</whitelist>
</filter>发布于 2012-07-26 12:08:20
如果出现,PHPUnit使用<whitelist>,如果没有,则使用<blacklist>。完全尝试删除<whitelist>。
https://stackoverflow.com/questions/11667970
复制相似问题