如何在PHPUnit的代码覆盖率中强制性地排除一个文件夹?
我的问题是,我有一个Symfony 1.4项目,其中有位于./lib/vendor/symfony/*
的文件夹。我想要递归地排除./lib/vendor/*
内的所有内容。
现在,无论是否被我的测试隐含地覆盖,我都想将它们排除,即我永远不想看到这些文件夹。所以,我向我的phpunit.xml
配置文件添加了这一部分,但似乎无论我如何操作,都不能排除这些文件夹:
<filter>
<whitelist>
<exclude>
<directory>./lib/vendor/*</directory>
<directory>./lib/vendor/symfony/lib/*</directory>
</exclude>
</whitelist>
</filter>
在我的理解中,一旦代码被执行并且XDebug注意到了它,PHPUnit就会无论如何将其包含在代码覆盖范围内。对我来说,这样做的缺点是,这段代码已经由Symfony开发人员进行了测试,因此不需要将其包含在我的覆盖范围报告中,这会影响我的统计数字 :P
*
吗? - j0k<directory>
从白名单中排除。与<blacklist><exclude>
相反,它会将<directory>
从黑名单中排除。 - lucifurious