Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何获取assertResponseOk的状态-laravel 4.2测试_Php_Laravel_Laravel 4_Phpunit - Fatal编程技术网

Php 如何获取assertResponseOk的状态-laravel 4.2测试

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,

这可能是一个非常基本的问题,但我找不到任何答案,因为我对phpunit和laravel非常陌生

我必须测试一个api,首先我为响应断言

$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);