120
114

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Laravelで俺が使いそうなAssertメソッドをまとめてみた

Last updated at Posted at 2018-12-18

ディップ Advent Calendar の19日目です。

はじめに

ディップ株式会社に2018年新卒で入社し、求人系サービスの開発や社内向けツールの開発を行なっている@taku-0728です。
今回は自分用メモとして、Laravelで個人的によく使いそうなAssertメソッドについてまとめてみます。
個人的な主観が入っているので、まとめに入っていないメソッドもあるかもしれませんがご了承ください。
よろしくお願いいたします。

メソッド一覧

レスポンス

メソッド 意味
assertCookie レスポンスが指定したクッキーを持っている
assertCookieMissing レスポンスが指定したクッキーを持っていない
assertDontSee 指定した文字列がレスポンスに含まれていない
assertSee 指定した文字列がレスポンスに含まれている
assertDontSeeText 指定した文字列がレスポンステキストに含まれていない
assertSeeText 指定した文字列がレスポンステキストに含まれている
assertForbidden レスポンスがforbiddenステータスコードを持っている
assertHeader レスポンスに指定したヘッダが存在している
assertHeaderMissing レスポンスに指定したヘッダが存在していない
assertJson レスポンスが指定したJSONデータを持っている
assertJsonCount レスポンスJSONが、指定したキーのアイテムを、期待値分持っている
assertJsonFragment レスポンスが指定したJSONの一部を含んでいる
assertJsonMissing レスポンスが指定したJSONの一部を含んでいない
assertLocation レスポンスのLocationヘッダが、指定したURIを持つ
assertNotFound レスポンスがnot foundのステータスコードを持っている
assertOk レスポンスが200のステータスコードを持っている
assertRedirect クライアントが指定したURIへリダイレクトする
assertStatus クライアントのレスポンスが指定したコードである
assertSuccessful レスポンスが成功のステータスコードである
assertViewHas レスポンスビューが指定したデータを持っている
assertViewHasAll レスポンスビューが指定したリストのデータを持っている
assertViewIs ルートにより、指定したビューが返される
assertViewMissing レスポンスビューが指定したデータを持っていない

セッション

メソッド 意味
assertSessionHas セッションが指定したデータを持っている
assertSessionHasAll セッションが指定したリストの値を持っている
assertSessionHasErrors セッションが指定したフィールドに対するエラーを含んでいる
assertSessionHasErrorsIn セッションが指定したエラーを持っている
assertSessionHasNoErrors セッションがエラーを持っていない
assertSessionMissing セッションが指定したキーを持っていない

認証

メソッド 意味
assertAuthenticated ユーザーが認証されている
assertGuest ユーザーが認証されていない
assertAuthenticatedAs 指定したユーザーが認証されている
assertCredentials 指定した認証情報が有効である
assertInvalidCredentials 指定した認証情報が無効である

ブラウザ

メソッド 意味
assertTitle ページタイトルが指定した文字列と一致する
assertTitleContains ページタイトルに、指定したテキストが含まれている
assertUrlIs クエリ文字列を除いた、現在のURLが指定した文字列と一致する
assertHostIs 現在のURLのホストが、指定したホストと一致する
assertHostIsNot 現在のURLのホストが、指定したホストと一致しない
assertPortIs 現在のURLポートが、指定したポートと一致する
assertPortIsNot 現在のURLポートが、指定したポートと一致しない
assertPathBeginsWith 現在のURLパスが指定したパスで始まる
assertPathIs 現在のパスが指定したパスである
assertPathIsNot 現在のパスが指定したパスではない
assertRouteIs 現在のURLが指定した名前付きルートのURLと一致する
assertQueryStringHas 指定したクエリ文字列パラメータが存在している
assertQueryStringMissing 指定した文字列パラメータが存在しない
assertInputValue 指定した入力フィールドが、指定値を持っている
assertInputValueIsNot 指定した入力フィールドが、指定値を持っていない
assertChecked 指定したチェックボックスが、チェック済みである
assertNotChecked 指定したチェックボックスが、チェックされていない
assertRadioSelected 指定したラジオフィールドが選択されている
assertRadioNotSelected 指定したラジオフィールドが選択されていない
assertSelected 指定したドロップダウンで指定値が選択されている
assertNotSelected 指定したドロップダウンで指定値が選択されていない
assertDialogOpened 指定したメッセージを持つ、JavaScriptダイアログが開かれている
assertEnabled 指定したフィールドが、enabledである
assertDisabled 指定したフィールドが、disabledである
assertFocused 指定したフィールドに、フォーカスがある
assertNotFocused 指定したフィールドから、フォーカスが外れている

データベース

メソッド 意味
assertDatabaseHas 指定したデータが、テーブルに存在する
assertDatabaseMissing 指定したデータが、テーブルに含まれない

最後に

個人的まとめとして、Laravelで自分が使いそうなAssertメソッドをまとめてみました。
機会があれば更新したいと思います。
最後まで読んでいただきありがとうございました。

120
114
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
120
114

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?