我正在努力让Netbeans code coverage checking功能正常运行。我在Windows XAMPP设置上使用PHP,并设置了PHPUnit,它似乎适用于运行单元测试。
当我右键单击我的项目并选择“代码覆盖率&gt;收集并显示代码覆盖率”时,它会在底部显示一个小条形图,显示“0%”并且可以选择运行测试并获取报告。< / p>
我运行测试并检查报告,但仍保持0%。如果我查看报告,则说“没有数据 - 你运行过你的代码吗?”我试过重新运行测试,但它仍然这样做。我也尝试过运行项目,并且“调试”项目无济于事。
有关该主题的最新信息很难得到,但是根据PHPUnit文档来判断could be an issue with Xdebug(我启用了它,但不知道它是否正常工作,因为我没有从内部使用它Netbeans之前)。一些旧的消息来源说Xampp中有两个php.ini(一个用于web,一个用于CLI),但我找不到第二个(猜测这已经改变了)。
我确定我可能会遗漏一些像Xdebug设置或其他东西那样基本的东西......有什么帮助吗?
这是我的php / php.ini文件中的XDebug部分:
[XDebug]
zend_extension = "D:\xampp\php\ext\php_xdebug.dll"
;xdebug.profiler_append = 0
;xdebug.profiler_enable = 1
;xdebug.profiler_enable_trigger = 0
;xdebug.profiler_output_dir = "\xampp\tmp"
;xdebug.profiler_output_name = "cachegrind.out.%t-%s"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
;xdebug.trace_output_dir = "\xampp\tmp"
答案 0 :(得分:6)
可能是由此造成的:http://forums.netbeans.org/topic47374.html。显然PHPUnit不能处理从c:\开始并在D:上测试一些东西。
因此,我使用--coverage -html / path / to / directory参数从命令行运行任何我想要覆盖报告的测试:
phpunit --bootstrap bootstrap.php --configuration phpunit.xml --coverage-html ./report ./unit
最后一个参数(./unit)表示这将测试unit /子目录中的als测试。