我有一个控制器,它通过构造函数注入 Illuminate\Http\Request
的实例。现在我需要编写一个单元测试来测试控制器中使用Request
实例中的值的调用。我决定使用Faker
。如何使用Faker生成一个关联数组,以便我可以在我的测试用例中使用该数组,如
$this->post('the_uri','MyFakerArray')
动态数组将自动在我的控制器请求中可用。
答案 0 :(得分:3)
无需伪造/模拟Request对象。 当您模拟请求时,laravel会为您执行此操作,它会为您请求的URL创建请求并传递变量,然后您从应用程序中获取响应。
例如:
(SELECT * FROM firstTable
UNION
SELECT * FROM secondTable)
ORDER BY Name DESC
现在$response = $this->call('POST', '/user', ['name' => 'Taylor']);
变量有要测试的数据。
我认为你有:
$response
当你这样做时,你的测试应该与响应一起使用,在这种情况下你不需要Faker。