我为什么需要这个?我在symfony项目上运行测试(并使用Zend fw),PHPunit为所有受影响的文件生成三叶草.但我不希望看到symfony和Zend libs(以及所有其他第三方)的报道.我希望只看到我的代码的报道.
或者可能这应该做三叶草查看器?我正在使用hudson的clover插件,但它不支持查看特定来源.三叶草插件显示,我的代码只覆盖了20%,这是不正确的,因为它也考虑了symfony和Zend库.
或者可能这应该做三叶草查看器?我正在使用hudson的clover插件,但它不支持查看特定来源.三叶草插件显示,我的代码只覆盖了20%,这是不正确的,因为它也考虑了symfony和Zend库.
您需要为PHPunit创建配置文件,在该配置文件中,您可以从代码覆盖中排除特定文件或目录.
示例文件如下所示:
<PHPunit stopOnFailure="false"> <testsuite name="Name"> </testsuite> <filter> <whitelist> <directory suffix=".PHP">../PHP</directory> <exclude> <file>../PHP/somefile.PHP</file> <directory suffix=".PHP">../PHP/pdf</directory> </exclude> </whitelist> </filter> <logging> <log type="coverage-html" target="target-dir/coverage" charset="UTF-8" yui="true" highlight="true"/> <log type="coverage-clover" target="target-dir/build/logs/clover.xml"/> </logging> </PHPunit>
使用上面的文件,除了文件../PHP/somefile.PHP和所有带扩展名的文件外,代码覆盖率中包含了../PHP下的所有内容(这是从测试所在的目录和执行PHPrun的相对位置).目录中的PHP ../PHP/pdf
将此文件命名为PHPunit.xml,将其放入运行测试的同一目录中.他们,如果你运行PHPunit,它会选择conf.
PHPunit --configuration yourconf.xml
有关PHPunit配置文件的更多详细信息,请访问:http://phpunit.de/manual/3.7/en/appendixes.configuration.html