鶏口牛後な日々

心の赴くまま、やりたいことを仕事に。

phpUnitテストの準備

  • テスト用のDBを準備する(DBを作成し、laravelユーザーがアクセスできるように権限付与する)
  • テスト用のDBの設定を.envに書く、または、.env_testを用意する
  • php artisan make:test でファイルを作成する
  • factory(seederのようなもの)を作る
  • factoryを呼び出す

あと、覚えておくと便利なもの

use RefreshDatabase;
の一文は要る。これは、データベースのテーブルをテストするごとにいちいち作成し、テスト終了時に全て落とすというおまじない。

setUp()関数を作る(基本となるユーザーを追加するなど、どのメソッドにも関連するものを入れておく)

actingAs($user)-> を挟むことで、毎回ログインを通らなくても、userとしてログインした状態から
テストを始められる便利なメソッド。

基本は、assertSuccessful(); や、assertTrue(); assertFalse(); assertRedirect(); で。

GETの場合は、get()->が使えるが、他は、call()->で、POST, DELETEなどのHTTP方式や、パラメーターも引数として入れ込む。



以上。