gpt4 book ai didi

php - 如何让 Netbeans PHPUnit 代码覆盖率在 Windows 上运行?

转载 作者:可可西里 更新时间:2023-10-31 22:45:07 24 4
gpt4 key购买 nike

我正在尝试获取 Netbeans code coverage checking功能工作。我在 Windows XAMPP 设置上使用 PHP,并设置了 PHPUnit,它似乎可以很好地运行单元测试。

当我右键单击我的项目并选择“代码覆盖率 > 收集并显示代码覆盖率”时,它会在底部显示一个小栏,上面写着“0%”,并提供运行测试和获取报告的选项。

我运行了测试并检查了报告,但它仍然是 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"

最佳答案

可能是这个引起的: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 测试。

关于php - 如何让 Netbeans PHPUnit 代码覆盖率在 Windows 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14588271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com