【问题标题】:Laravel route and controller testingLaravel 路由和控制器测试
【发布时间】:2014-03-10 14:38:59
【问题描述】:

所以我正在尝试测试我创建的一些路由和控制器功能。返回视图的其他路由工作正常,我的教授告诉我,我可以通过在它们指向的控制器函数中放置一个 vardump 来测试路由。

现在,这对我来说真的没有意义,因为这些函数从不返回任何视图或 UI 数据,它们只是返回 JSON 响应。

我是否正确,没有办法使用 vardumps 测试这样的路线?只是在这里感到困惑。

【问题讨论】:

  • 你仍然可以在这些函数中 var_dump 任何你想要的东西。您将在调试器或控制台中看到该信息,具体取决于您使用的开发人员工具/浏览器。这样做可能会破坏您的应用程序,因为 javascript 并不期待所有额外的信息。不过,我对这样做的意义感到困惑。如果它返回 json,var_dump 应该实际测试什么?

标签: php testing laravel controller routing


【解决方案1】:

在使用 Laravel 开发 REST API 时(我倾向于默认返回 JSON),我使用 Postman 客户端进行测试。 var_dump() 如果您安装了 xdebug(我安装了),则在查看响应时会非常难看,因此我倾向于使用 print_r

例如,就在今天早上测试一些东西时,我在我的控制器中添加了这一行:

print_r($files); exit;

这是邮递员给我看的:

如果您愿意,也可以使用var_dump。如果您不包含exit() 语句,应用程序将继续运行,并且取决于您的设置方式,您可能会得到比您想要的更多的东西。对我来说,转储我需要的内容并停止应用程序更容易,这样我就可以快速查看我需要的内容。

【讨论】:

  • 太好了,这正是我需要的。
  • 不要忘记 Laravel 的转储方式! dd(...)
猜你喜欢
  • 2023-03-27
  • 2017-03-05
  • 1970-01-01
  • 1970-01-01
  • 2014-07-20
  • 1970-01-01
  • 1970-01-01
  • 2017-02-27
相关资源
最近更新 更多