Skip to main content

コンソールテスト

Laravelでは、Artisanコマンドに対して入力・出力を含むテストを簡潔に記述できます。
このページはLaravel最新のコンソールテストAPIに合わせており、Laravel Promptsの検索入力を検証する expectsSearch も扱います。

はじめに

artisan メソッドでコマンドを実行し、期待値をチェーンして検証します。

成功 / 失敗のアサーション

終了ステータスを検証して、コマンドの成功・失敗を判定できます。

入力 / 出力の期待値

入力の期待値

質問入力や検索入力に対するユーザー操作をモックできます。

出力の期待値

出力文字列の完全一致・部分一致・テーブル表示を検証できます。

確認の期待値

Yes / No の確認プロンプトには expectsConfirmation を使います。

コンソールイベント

デフォルトではテスト実行時に CommandStarting / CommandFinished は発火しません。 イベント検証が必要なテストクラスには WithConsoleEvents を追加します。
WithConsoleEvents は必要なテストに限定して使うと、通常のテスト速度を維持しやすくなります。
最終更新日 2026年5月29日