我有一个Symfony 3应用程序,我正在尝试使用PHPunit运行功能测试,我会在每次测试中加载灯具。
目前,测试将以代码255静默失败,没有输出或日志显示失败的原因。即使我已经用尽所有可能的PHP配置,试图让它输出更多信息。
如果我自己运行失败的测试,它会通过。 如果我立刻运行整个套件,它将失败。 如果我删除了失败的测试,那么在测试之后它仍将失败。
它传递的唯一方法是使用--process-isolation标志,但这会显着减慢测试速度。
相关的php.ini配置:
memory_limit = -1
error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
有没有人有类似的问题,可能知道解决方案?
答案 0 :(得分:0)
PHPUnit可能会返回错误代码但没有任何输出。它发生在发生PHP错误并且错误未配置为显示时。
在将log_errors
指令设置为On
时,您应该查看系统日志以查找来自PHP的错误消息。
首先,您必须检查您希望加载的php.ini
文件是否正确。
根据您的系统,PHP可能会加载a different configuration file for CGI/CLI。
您还可以使用以下命令在CLI中显示已加载的配置文件:
$ php --ini
Configuration File (php.ini) Path: /etc/php
Loaded Configuration File: /etc/php/php-cli.ini
Scan for additional .ini files in: /etc/php/conf.d
Additional .ini files parsed: /etc/php/conf.d/xdebug.ini
然后,您需要检查error_log
configuration directive,因为它定义了日志的写入位置。