我正在使用 Phpunit。如果我只是运行我的测试:
phpunit --log-junit 输出.xml
这在一秒钟内运行。但如果我想要代码覆盖率:
phpunit --coverage-html ./report --log-junit 输出.xml
那么它的速度非常慢,phpunit 发送“配置读取自*.xml”,它挂起一分钟,然后开始执行测试
默认情况下,PHPUnit 将评估您配置的白名单中所有文件的覆盖范围,即使您运行 PHPUnit 进行单个测试也是如此。
如果白名单中有很多文件,这可能会增加生成代码覆盖率的大量时间。
您可以通过配置 PHPUnit 仅为您已编写/执行测试的文件生成代码覆盖率来加快速度,方法是设置addUncoveredFilesFromWhitelist
归因于false
.
<phpunit>
<!-- ... -->
<filter>
<whitelist addUncoveredFilesFromWhitelist="false">
<!-- ... -->
</whitelist>
</filter>
</phpunit>
禁用此设置后,您应该会看到生成的代码覆盖率文件仅描述您运行测试的文件。
请注意,PHPUnit 文档 https://phpunit.de/manual/current/en/code-coverage-analysis.html#code-coverage-analysis.whitelisting-files建议addUncoveredFilesFromWhitelist
is false
默认情况下,但在版本 5.5 上它似乎是true
默认情况下。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)