PHPUnit 代码覆盖率生成导致内存耗尽
2022-08-31 01:09:35
我目前正在将Zend Framework与PHPUnit结合使用,以对应用程序进行单元测试。当 Hudson 执行 PHPUnit shell 命令时,在代码覆盖率生成期间的某个时候达到最大 PHP 内存限制。我目前共有41个测试,有334个断言。
我通过使用开关将memory_limit设置提高到768M,成功地消除了此错误;但是,我担心随着复杂性随着测试/断言总数的增加而增加,我将没有足够的内存来生成用于代码覆盖率统计信息的HTML。-d memory_limit=768M
操作系统:CentOS 5.5
控制面板: WHM/cPanel
CI Server: Hudson
/usr/local/bin/phpunit
--verbose
-d memory_limit=512M
--log-junit ../../build/logs/phpunit.xml
--coverage-clover ../../build/logs/coverage/clover.xml
--coverage-html ../../build/logs/coverage-html/
致命错误:允许的内存大小为 536870912 字节已耗尽
在提交我的更改并让 Hudson 处理其余部分之前,我使用 Windows 7 进行开发。在 W7 中运行相同命令时,内存使用量从未超过 340MB。