如何在Windows上使用Netbeans PHPUnit代码覆盖?

时间:2013-01-29 17:07:45

标签: php netbeans phpunit

我正在努力让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"

1 个答案:

答案 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测试。