我有类似的问题,例如: testing error_log with PHPUnit
但是,在我的情况下,内部使用 error_log()的Logger类 ErrorLog 是通过 composer 安装的,并且位于 vender 文件夹-它不是我自己写的。因此,我不能/不应该在与 ErrorLog 相同的名称空间中生成新的 error_log()函数。
<?php
namespace Vendor\ErrorLog\Logger;
...
class Errorlog {
...
public function log(...) {
...
$message = ... ;
error_log($message);
}
}
因此,每次我运行测试时,都会应用 ErrorLog 并调用 error_log()。 然后PHPUnit捕获错误,测试将失败。
实际上,我只想记录该错误,而不是让PHPUnit测试失败。 有人可以告诉我如何解决这个问题吗?