使用上传文件的Laravel单元测试无法获取文件

问题描述 投票:1回答:1

我正在研究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'))总是nulldd($request->file()是空阵列。

有没有人对这个问题有任何想法?

laravel laravel-5
1个回答
1
投票

您想要传递post函数的第二个参数中的参数。这就是你想要的:

public function testUpload()
{
    Storage::fake('local');

    $this
        ->post(route('upload'), ['file' => UploadedFile::fake()->create('file.txt', 1024)])
        ->assertSuccessful();
}
© www.soinside.com 2019 - 2024. All rights reserved.