即使内存限制为-1,phpdbg / phpunit也会抛出错误

时间:2017-09-01 13:32:58

标签: php phpunit phpdbg

我有一台32GB的机器,运行超过2000个测试用例,使用phpdbg进行代码覆盖。

Norm().plot(10000)

运行一段时间后,即使phpdbg -qrr -d memory_limit=-1./vendor/phpunit/phpunit/phpunit --debug --verbose 为-1

,也会引发以下错误
  

map()失败:[12]无法分配内存   [PHP致命错误:内存不足(分配5830606848)(试图分配65536字节)]

1 个答案:

答案 0 :(得分:0)

你可能会泄漏内存并且没有清理它。有些插件会报告每个测试使用多少内存,而其他插件会尝试自动清理 - 尽管有了对PHPunit v6 +的更新,有些可能需要注意使用命名空间测试用例类。

尝试释放内存的是mybuilder / phpunit-accelerator'但是如果你能找到特别重要的内存测试类,你可以手动清空拆解中使用的变量()函数。

确保您只收集自己代码(src /,也许是test /)的覆盖率数据也会节省大量内存(和时间) - 但会将' src /&#39列入白名单;目录并且不要尝试将黑名单/排除' vendor /'。