我正在使用Laravel 5.6。
我的单元测试代码:
public function testUpload()
{
Storage::fake('local');
$this
->post(route('upload', ['file' => UploadedFile::fake()->create('file.txt', 1024)]))
->assertSuccessful();
}
但是在控制器$request->file('file')
中始终为null
。
route('upload')
是正确的,但是dd($request->file('file'))
总是null
,而dd($request->file()
是空数组。
有人对这个问题有任何想法吗?
答案 0 :(得分:1)
您要在post
函数的第二个参数中传递参数。这就是您想要的:
public function testUpload()
{
Storage::fake('local');
$this
->post(route('upload'), ['file' => UploadedFile::fake()->create('file.txt', 1024)])
->assertSuccessful();
}