Я работаю над пакетом Symfony2 и запускал phpunit --coverage-text
. Все тесты проходят без каких-либо проблем, и я получил отчет о покрытии кода, но он был неполным, а внизу - следующее сообщение.Покрытие кода PHPUnit дает zend_mm_heap повреждение или ошибку сегментации 11
Classes: 4.08% (2/49)
Methods: 1.94% (12/619)
Lines: 1.60% (46/2867)
..
....
zend_mm_heap corrupted
Я нахожусь на PHP 5.4.11, и я запускаю последние версии PHPUnit и xdebug. PHPUnit всегда работает должным образом, за исключением случаев, когда я прошу его сделать покрытие кода. Вот соответствующая часть моего файла конфигурации PHPUnit.
<testsuites>
<testsuite name="My Suite">
<directory>./src/Company/*Bundle/Tests</directory>
</testsuite>
</testsuites>
<filter>
<whitelist>
<directory suffix=".php">./src/Company/*Bundle/</directory>
</whitelist>
</filter>
я понял, что это либо проблема памяти или буферизация вывода, поэтому я попытался следующие повысит ини директивы.
output_buffering = 8192
memory_limit = 1028M
Это снимало предыдущую ошибку, но я начал вместо получения ошибки segmentation fault 11
вместо этого.
Как вы избавитесь от этих проблем?
Symfony2 поставляется с файлом конфигурации phpunit.xml.dist, который заботится об этом за вас. Если вы похожи на меня и начали свою собственную конфигурацию с нуля, ее удобно запомнить. –
У меня такая же проблема, но для меня это происходит только с текстовым форматом. Все остальные отлично работают. – Dynom
Также см. Http://stackoverflow.com/questions/2247977/what-does-zend-mm-heap-corrupted-mean – Ben