gpt4 book ai didi

php - 如何诊断这些 PHP-Code-Coverage segmentation 和 zend_mm_heap corrupted 错误

转载 作者:可可西里 更新时间:2023-10-31 22:19:25 28 4
gpt4 key购买 nike

我一直在我的 Ubuntu 机器上愉快地编码。这是一台具有大量 RAM 的强大机器。我正在研究 4 个新类(class),同时编写和运行单元测试。在某些时候,我注意到,虽然单元测试完成得很好,但代码覆盖率却不是。

在消息“生成代码覆盖率报告...等等”之后,我会收到一条消息说 zend_mm_heap 已损坏。我尝试了一些修复,包括:在我的 php.ini(apache2 和 cli)中设置 output_buffering = On,并从我的代码中删除对 unset() 的调用。 (我继续阅读,因此可能需要修复这些问题)。

现在,无论我做什么,我似乎都在 zend_mm... 错误和段错误(核心转储)错误之间交替。我注释掉测试,直到我缩小我认为导致问题的范围,并在那里进行一些更改,直到我得到一个干净的运行。然后我将取消所有测试的注释,结果发现该错误仍然存​​在。

有什么想法吗?我可以使用什么工具或方法来收集更多信息?

我正在使用 PHP_CodeCoverage 1.2.6、PHP 5.3.10-1ubuntu3.5、PHPUnit 3.7.9。

编辑:

顺便说一句,我找不到任何核心转储文件。已经从我的两个物理磁盘的根目录中进行了搜索,但没有成功。我已阅读有关核心的 man 条目,包括核心转储未创建文件的可能原因,但我认为这些都不适用。

最佳答案

我最近遇到了同样的问题。这似乎是 PHP 垃圾回收的问题。在 phpunit 运行期间禁用垃圾收集解决了我的问题。

添加:

zend.enable_gc=0 

到您的 php.ini 文件或从命令行使用:

phpunit -d zend.enable_gc=0

关于php - 如何诊断这些 PHP-Code-Coverage segmentation 和 zend_mm_heap corrupted 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14597468/

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