使用Laravel资源控制器测试异常是否可行?每次我尝试执行以下操作:
/**
* @expectedException Exception
* @expectedExceptionMessage Just testing this out
*/
public function testMyPost() {
$response = $this->call('POST', '/api/myapi/', array('testing' => 1));
}
I get:
Failed asserting that exception of type "Exception" is thrown.
我已经尝试过使用 \Exception 和 Exception。
在我的资源控制器中,我有:
public function store() {
throw new \Exception('Just for testing!');
}
有没有人知道如何测试异常?我也尝试使用:
$this->setExpectedException('InvalidArgumentException');
@expectedException \\Exception
会怎样? - zerkmstry-catch
包装您的调用,并使用get_class($e)
获取确切的异常类型,会怎样呢?可能是$this->call()
抛出了一个异常,而您原始的异常被其他东西处理了。 - zerkms$response = $this->action('POST', 'APIController@store');
,也没有抛出任何东西。 - mayrop