Codeception
PhpStorm は、 ユニット、 機能、 受け入れテストを、バージョン 2.2.0 以降の Codeception テストフレームワーク で実行するためのサポートを提供します。
始める前に
PHP ページで、 ローカル PHP インタープリターを構成する および リモート PHP インタープリターの構成 の説明に従って、PhpStorm に PHP インタープリターが設定されていることを確認してください。
Codeception をダウンロードしてインストールする
開始する前に、Composer がマシンにインストールされ、 Composer 依存関係マネージャー に従って現在のプロジェクトで初期化されていることを確認してください。
Codeception を手動でダウンロードしてインストールする
codeception.phar を Codeception インストールページ(英語)からダウンロードし、Codeception が後で使用されるプロジェクトのルートに保存します。
codeception.phar を別の場所に保存し、 インクルードパスとして設定することもできます。 どちらの場合でも、PhpStorm はプロジェクト解析に codeception.phar を含めるため、Codeception クラスへの参照が正常に解決され、完全なコーディング支援を利用できます。
Composer を使用して Codeception をダウンロードしてインストールする
composer.json 内で、
codeception/codeception依存関係レコードをrequireキーまたはrequire-devキーに追加します。 パッケージ名とバージョンのコード補完を取得するには、 Ctrl+Space を押します。次のいずれかを実行します:
エディターパネルの上部にある インストールする ショートカットリンクをクリックします。
インストールされていない Composer パッケージ インスペクションが有効化されている場合、PhpStorm は現在インストールされていない宣言済みの依存関係をハイライトします。 Alt+Enter を押して、特定の依存関係をインストールするか、すべての依存関係を一度にインストールするかを選択します。
Codeception 公式サイト(英語)から Codeception をインストールする方法の詳細を参照してください。
composer.json エディターのガター内のパッケージレコードの横にある をクリックすると、対応する 設定 ページが表示され、そこで Codeception を手動で構成できます。

プロジェクトで Codeception を PhpStorm と統合する
ローカル PHP インタープリターを使用する場合、PhpStorm は Codeception の初期構成を自動で実施します。 リモート PHP インタープリターの場合、手動の Codeception 構成が必要です。
codeception.yml 設定ファイルを生成する
Codeception をインストールしたら、 codeception.yml 設定ファイルを生成してプロジェクトで初期化する必要があります。
ビルトイン PhpStorm ターミナル Alt+F12 を開き、コマンドプロンプトでインストールモードやご利用のオペレーティングシステムに応じて、以下のコマンドのいずれかを入力してください:
プロジェクトに codeception.phar をインストールした場合は、Windows の場合は
php codecept.phar bootstrap、Linux の場合は macOS またはcodecept bootstrapと入力します。Composer を介して Codeception をグローバルにインストールした場合は、すべてのプラットフォームで
codecept bootstrapと入力します。
Codeception を自動的に設定する
codeception.yml または codeception.dist.yml 構成ファイルをプロジェクトルートに保存します。
PhpStorm はインストールされている Codeception 実行可能ファイル(または、プロジェクトに Composer 管理のサブプロジェクトがあり Codeception 依存が指定されている場合は複数)を検出し、インストールされている各 Codeception 実行可能ファイルごとに テストフレームワークページでテストフレームワーク構成を作成します。

codeception.yml または codeception.dist.yml 構成ファイルがプロジェクト(またはサブプロジェクト)のルートで自動的に検出されるか、 手動構成時に明示的に指定された場合、PhpStorm はそれぞれの Codeception 実行/デバッグ構成も作成します。

Codeception を手動で設定する
設定 ダイアログ(Ctrl+Alt+S )で、 に移動します。
開いている テストフレームワークページの中央ペインで
をクリックし、リストから設定タイプを選択します。

ローカル構成では、デフォルトのプロジェクト PHP インタープリターが使用されます。 詳細については、 デフォルトのプロジェクト CLI インタープリターを参照してください。
リモート PHP インタープリターで Codeception を使用するには、表示されるダイアログで以下のいずれかの設定を選択します。

Codeception ライブラリ 領域で、ターゲット環境内の Codeception 実行可能ファイルまたは codeception.phar アーカイブの場所を指定します。 例: Composer から Codeception をインストールした場合、実行可能ファイルは vendor/bin/codecept に保存されます。 Codeception ディレクトリまたは phar ファイルへのパス フィールドの横にある
をクリックします。 PhpStorm は Codeception のバージョンを検出し、それをフィールドの下に表示します。
テストランナー 領域で、シナリオの起動と実行に使用する構成 YML ファイルへのパスを設定します。
デフォルト構成ファイル チェックボックスをオフにすると、Codeception はプロジェクトのルートフォルダーにある codeception.yml または codeception.dist.yml 設定ファイルを使用します。 該当するファイルが見つからない場合、テスト実行は失敗します。 そのため、設定ファイルを明示的に指定した方が確実です。
すべての Codeception 実行 / デバッグ構成でデフォルトの構成ファイルとして使用される YML ファイルへのパスを指定するには、 デフォルト構成ファイル チェックボックスを選択します。
クラスの Codeception テストを生成する
次のいずれかを実行して 新しい PHP テストを作成する ダイアログを開きます。
に進みます。 次に、コンテキストメニューから PHP テスト | Codeception ユニットテスト または PHP テスト | Codeception 機能テスト を選択します。
プロジェクト ツールウィンドウで、 Alt+Insert を押すか、テストする PHP クラスを右クリックし、 新規 | PHP テスト | Codeception ユニットテスト または 新規 | PHP テスト | Codeception 機能テスト を選択します。
テストする PHP クラスのエディターで、クラスの定義にキャレットを置きます。 次に、 Alt+Enter を押して、ポップアップメニューから 新規テストの作成 を選択します。 この方法で、単一の PHP ファイル内の複数のクラス間で定義された PHP クラスのテストを生成できます。
特定のメソッドのテストを作成するには、メソッド宣言内にキャレットを置きます。 選択したメソッドは、 新しい PHP テストを作成する ダイアログのメソッドのリストから自動的に選択されます。
開いた 新しい PHP テストを作成する ダイアログで、生成されたテストのパラメーターを指定します。

テストファイルテンプレート :PhpStorm がテストクラスを生成する際のテンプレートです。 リストから Codeception ユニット または Codeception 機能性 のいずれかが選択されていることを確認します。
命名: テストクラスの名前。 PhpStorm は、実動クラス名から <production class>Test.php (Codeception ユニットテスト の場合)または <production class>Cest.php (Codeception 機能テスト の場合)として名前を自動的に作成します。
ディレクトリ :テストクラスファイル用のフォルダーで、実動クラスの格納ディレクトリや名前空間、設定された テストソースルートやその PSR-4 パッケージプレフィックス 、または
テストで指定された codeception.yml構成ファイルの値にもとづき自動提案されます。別のフォルダーを指定するには、 ディレクトリ フィールドの横にある
をクリックし、該当するフォルダーを選択します。
名前空間 :テストクラスが属する名前空間で、実動クラスの格納ディレクトリや名前空間、設定された テストソースルートとその psr-4 パッケージプレフィックス 、または
名前空間で指定された codeception.yml構成ファイルの値にもとづき自動提案されます。メンバー: テストメソッドスタブを生成する製品クラスメソッドのリスト。 必要な製品クラスメソッドの横にあるチェックボックスをオンにします。 親クラスから継承されたメソッドを含めるには、 継承メソッドの表示 チェックボックスをオンにします。
PhpStorm は、テストメソッドの名前を
test<production method>として自動的に作成します。 テストメソッドスタブの生成に使用されるコードテンプレートは、 ファイルおよびコードテンプレート 設定ページの コード タブでカスタマイズできます。
テストが作成されたら、 移動 | テスト対象に移動 を選択して実稼働クラスに戻ることができます。 詳細については、 テストとそのテスト対象の間を移動する を参照してください。
Codeception テストの実行とデバッグ
Codeception テストの書き方の詳細については、「ユニットテスト(英語)」、「受け入れテスト(英語)」、「機能テスト(英語) 」を参照してください。
Codeception テストの実行またはデバッグ
プロジェクトツールウィンドウで、テストを実行するファイルまたはフォルダーを選択し、選択したコンテキストメニューから 実行 '<ファイルまたはフォルダー>'; または デバッグ '<ファイルまたはフォルダー>'; を選択します。

PhpStorm はデフォルトの実行構成を生成し、それを使って実行または デバッグテストセッションを開始します。
自動的に生成されたデフォルト設定を保存する
テストセッションが終了したら、実行ウィジェットのそれぞれの実行 / デバッグ構成のコンテキストメニューから 構成の保存 を選択します。
以前に保存された実行 / デバッグ構成によってテストを実行またはデバッグする
ツールバーのリストから必要な Codeception 構成を選択し、
または
をクリックします。
カスタム実行 / デバッグ構成を作成する
プロジェクト ツールウィンドウで、実行するテストが含まれるファイルまたはフォルダーを選択し、コンテキストメニューから 実行構成の作成 を選択します。 あるいは、メインメニューで に移動し、
をクリックしてリストから Codeception を選択します。
開いた Codeception ダイアログで、実行するシナリオを指定し、使用する PHP インタープリターを選び、PHP 実行可能ファイルに渡すオプションや引数を指定して動作をカスタマイズします。
テスト結果を監視する
PhpStorm は 実行ツールウィンドウ の テストランナータブにテスト実行結果を表示します。

このタブは大きく 2 つのエリアに分かれています。
左側の領域では、すべての単体テストをドリルダウンして、成功したテストと失敗したテストを確認できます。 テストのフィルタリング、結果のエクスポート、コンテキストメニューコマンドを使用して特定のテストを実行したりソースコードに移動したりできます。
右側の領域には、生の Codeception 出力が表示されます。
Codeception テストを自動的に実行する
影響を受けたコードが変更された場合、PhpStorm でテストを自動的に再実行することができます。 このオプションは、実行 / デバッグ構成ごとに構成され、この実行 / デバッグ構成で指定されたテスト範囲に応じて、テスト、テストファイル、フォルダー、テストの複合選択に適用できます。
テストを実行します。
実行 ツールバーで、
自動的に再実行 をクリックします。

オプションで、コードの変更時にテストを開始するまでの遅延時間を設定します。 これを行うには、 実行 ツールバーで
をクリックし、
テストランナーの設定 | 自動テスト遅延の設定 を選択します。
