㊗️
Laravelのテストレスポンスまとめた
Laravelのテストレスポンスには、さまざまなアサーションメソッドが用意されている。
PHPUnitでテストコード実装時にいつも調べていることに気付き億劫なため、よく使うであろうメソッドをまとめました。
ステータスコードの検証
assertStatus(int $status)
指定したHTTPステータスコードが返されたかどうかを検証する。
assertOk()
HTTPステータスコードが200であることを検証する。
assertNotFound()
HTTPステータスコードが404であることを検証する。
assertForbidden()
HTTPステータスコードが403であることを検証する。
assertUnauthorized()
HTTPステータスコードが401であることを検証する。
レスポンス内容の検証
assertJson(array $data)
レスポンスが指定した配列と一致するJSONデータを含んでいるかどうかを検証する。
assertExactJson(array $data)
レスポンスが指定した配列と完全に一致するJSONデータを含んでいるかどうかを検証する。
ヘッダーの検証
assertHeader(string $headerName, string $value = null)
レスポンスに指定したヘッダーが存在し、オプションでその値が期待値と一致するかどうかを検証する。
assertHeaderMissing(string $headerName)
レスポンスに指定したヘッダーが存在しないことを検証する。
リダイレクトの検証
assertRedirect(string $uri = null)
レスポンスがリダイレクトであり、オプションで指定したURIにリダイレクトするかどうかを検証する。
assertRedirectContains(string $uri)
レスポンスがリダイレクトであり、リダイレクト先のURIに指定した文字列が含まれているかどうかを検証する。
Discussion