【问题标题】:PHPUnit started randomly failing within Hudson shellPHPUnit 在 Hudson shell 中开始随机失败
【发布时间】:2012-12-20 18:20:11
【问题描述】:

环境中没有任何变化,测试套件本身也没有变化。 XML 报告正确生成,但不是 HTML。请帮忙!

生成代码覆盖率报告,这个 可能需要一个 时刻。/tmp/hudson3472766550808527893.sh: 第 3 行:5237 终止
/usr/local/bin/phpunit --verbose -d memory_limit=1024M --log-junit ../../build/logs/phpunit.xml --coverage-clover ../../build/logs/coverage/clover.xml --coverage-html ../../build/logs/coverage-html/

任何帮助将不胜感激。这对我们的开发产生了负面影响。团队。以下是最新的错误信息。

..................................................

时间:34 秒,内存:94.50Mb

[30;42m[2KOK(56 次测试,493 assertions) [0m[2K 写代码 覆盖数据到 XML 文件,这可能 花点时间。致命错误:超出 内存(分配555483136)(试图 分配 71 个字节)在 /usr/local/lib/php/PHP/Token/Stream.php 在第 155 行 /tmp/hudson1430922411819914240.sh: 第 3 行:26479 终止
/usr/local/bin/phpunit --verbose -d memory_limit=1024M --log-junit ../../build/logs/phpunit.xml --coverage-clover ../../build/logs/coverage/clover.xml --coverage-html ../../build/logs/coverage-html/

【问题讨论】:

    标签: php hudson phpunit


    【解决方案1】:

    在 PHP 进程完成之前,某事终止了它,但无法从该日志中看出原因。检查服务器上的系统日志,它可能对正在发生的事情有一些提示。

    【讨论】:

    • 嗨 Anti Veeranna,感谢您的回复。我检查了系统日志,但没有找到任何线索...
    【解决方案2】:

    当服务器上的可用内存不足时,我们遇到了 PHPUnit 内存不足的问题......只是给你一个提示......(我们使用 apache 来启动测试,大约有 10 个进程, 每个都吃 2GB 内存...) 测试开始随机失败。

    您可能遇到的另一个问题是内存使用率高...这可能是由 phpunits 恢复全局状态功能引起的。如果禁用它,则必须在测试后进行清理,以免它们干扰其他测试,但您将使用更少的内存。

    【讨论】:

    • 谢谢你的建议,保罗。我会研究这个功能。
    【解决方案3】:

    随着为代码覆盖而包含的文件数量增加,内存使用量也在增加。这个问题与下面的链接相似,但又不同。

    PHPUnit code coverage generation causing memory exhaustion

    【讨论】:

      猜你喜欢
      • 2012-11-16
      • 2020-09-17
      • 1970-01-01
      • 1970-01-01
      • 2013-06-04
      • 2019-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多