如何在 Laravel PHPUnit 测试中获取响应变量?

use*_*047 5 php phpunit laravel laravel-testing

我正在测试控制器方法,并且正在测试中访问路由。

然后我想确保在视图中返回正确的模型并加载所有正确的关系。

我知道我可以这样做:

$this->assertViewHas("content");
Run Code Online (Sandbox Code Playgroud)

但是我如何验证返回到视图中的内容模型是否具有正确的(例如类别)?即我如何获取内容模型对象,然后执行类似的操作

$this->assertEquals($content->category->name, "category 1");
Run Code Online (Sandbox Code Playgroud)

Vit*_*uli 5

您可以从响应中获取内容,如下所示:

$content = $response->getOriginalContent()->getData()['content'];
Run Code Online (Sandbox Code Playgroud)

getData()以数组形式返回发送到视图的数据。