Laravel で画像をアップロードする Controller のテストを書く

Laravel で画像アップロードのController周りのテストを書いたことがなかったので備忘録

<?php

use Tests\TestCase;
use Illuminate\Http\UploadedFile;

class SampleControllerTest extends TestCase
{
    public function test画像アップロードができる()
    {
        $res = $this->post('image/upload', ['images' => UploadedFile::fake()->image('hoge.jpg')]);

        $res->assertRedirect('image/upload/completed');
        $res->assertSessionHas('success', 'アップロードに成功しました。');
    }
}

UploadedFile facadeのfake()を使えばOK
勝手に面倒くさそうと思ってたけどめちゃめちゃ簡単だった👌

readouble.com


株式会社エイルシステムではWebエンジニア・モバイルアプリエンジニアを募集しています。
実務経験がなくてもOKです。ご興味のある方は弊社HPよりご連絡ください。