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

标签 php laravel phpunit laravel-testing

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

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

我知道我可以做到这一点:

$this->assertViewHas("content");

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

$this->assertEquals($content->category->name, "category 1");

最佳答案

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

$content = $response->getOriginalContent()->getData()['content'];

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

关于php - 如何在 Laravel PHPUnit 测试中获取响应变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42772692/

相关文章:

php - 如何使用 laravel 5.8 在 Controller 中创建一个条件?

php - 如何从 php 将参数传递给 windows 命令行程序中的可执行文件?

php - 在 PHP 中包含文件的最佳方式?

http - 通过 HTTP 调用的代码的 PHPUnit 代码覆盖率分析

Symfony 2.1 表单对绑定(bind)事件进行单元测试

php - 即使 postman 做对了,测试也无法正确断言请求

laravel - 如何在 Laravel 5 中创建一个捕获所有 url

php - 使用 laravel 和 jquery 分页无法按预期工作

php - 尝试安装 bundle 时出现 Laravel 4 Artisan 错误

laravel-5 - Laravel 5.5 测试 JSON header 不起作用