0
我需要測試我們的錯誤記錄器在各種情況下的工作方式。其中一種情況是解析錯誤。這裏有一個例子:使用phpunit測試PHP解析錯誤
public function testParseErrorLogsAnError()
{
$this->assertCount(0, $this->log_handler->getRecords());
try {
eval('<?php not good');
$this->fail('Code above should throw a parse error');
} catch (\Exception $e) {
$this->assertInstanceOf(\ParseError::class, $e);
}
$this->assertCount(1, $this->log_handler->getRecords());
}
問題是,PHPUnit的總是有例外存在,並且永遠不會進入catch
塊。如何禁用或限制phpunit的異常處理程序,所以我們可以測試我們自己的?
拋出異常是一個PHP7功能EVAL。你在使用PHP7嗎? –
是的,我們使用PHP7。 – Ilija