Php 如何获取assertResponseOk的状态-laravel 4.2测试
这可能是一个非常基本的问题,但我找不到任何答案,因为我对phpunit和laravel非常陌生 我必须测试一个api,首先我为响应断言Php 如何获取assertResponseOk的状态-laravel 4.2测试,php,laravel,laravel-4,phpunit,Php,Laravel,Laravel 4,Phpunit,这可能是一个非常基本的问题,但我找不到任何答案,因为我对phpunit和laravel非常陌生 我必须测试一个api,首先我为响应断言 $this->assertResponseOk(); 然后我在玩弄回应,主张平等 $response = $response->getOriginalContent(); $response = json_decode($response); $result = ... . . $this->assertEquals(true,
$this->assertResponseOk();
然后我在玩弄回应,主张平等
$response = $response->getOriginalContent();
$response = json_decode($response);
$result = ...
.
.
$this->assertEquals(true, $result);
我想做的是把第二件事(处理响应)放在第一个断言为真的条件下
我能做吗?谢谢您的帮助。您不需要任何条件-PHPUnit将为您处理此问题 如果前面的断言已经为真,它将只继续断言函数中的其余测试 i、 e
那很好,但是如果我想打印成功或失败的自定义消息呢?还有,如果有可能在多个测试的情况下显示哪个测试正在运行呢?目前我做的是
if($this->assertResponseOk($response)==null){echo'XYZ_TestSuccessful';}
,这是可行的,但肯定不是正确的方法@换班你不用说它成功了。如果不成功,PHPUnit会告诉你。如果你所有的测试都通过了——PHPUnit告诉你。我同意@Fahad的说法,像PHPUnit那样添加自定义消息的可能性是不存在的,我认为这是Laravel API上的一个错误。
$this->assertResponseOk();
// The previous $this->assertResponseOk() MUST have been true to reach this point
$this->assertEquals(true, $result);