PhpStorm 2018.3ヘルプ

Behatによるテスト

PhpStormを使用すると、Behatフレームワークを使用してシナリオを実行することによって、行動主導の開発を実践できます。現在PhpStormはBehat 3(英語)Behat 2(英語)バージョンとの統合をサポートします。

PhpStormでのBehatのネイティブサポートには以下が含まれます:

  • feature シナリオファイルと PHP シナリオ定義ファイルの認識とコーディング支援。

  • feature ファイルでのGherkin(英語)構文サポート: FeatureScenarioGivenWhenThenAnd、および But キーワード。

  • 定義ファイル内の @given@when@then 注釈の認識

  • Behat 2.4用のPCRE(英語)規格およびBehat 3.0用のPCRE +に従って、正規表現を使用してシナリオとその定義間の対応を設定します。カブの表情(英語)も大歓迎です。

始める前に

ローカルPHPインタープリターの設定リモート PHPインタープリターの設定で説明されているように、PHPインタープリターがPHPページのPhpStormで設定されていることを確認してください。Behat 3にはPHP 5.5以降が必要です。

Behatのダウンロードとインストール

開始する前に、Composerがマシンにインストールされ、Composer依存マネージャーで説明されているように現在のプロジェクトで初期化されていることを確認してください。

Behatインストールパッケージを手動でダウンロードする

  • behat.pharBehatダウンロードページ(英語)からダウンロードし、コンピューターに保存します。

    • Behatテストを実行する機能に加えて完全なコーディング支援が必要な場合は、behat.phar をBehatが後で使用されるプロジェクトのルートに格納します。

    • Behatテストを実行するだけで、コーディング支援が必要ない場合、behat.phar をプロジェクトの外に保存することができます。

Composerを使用してBehatをダウンロードしてインストールする

  1. composer.jsonのコンテキストメニューで、Composer | 依存性の管理を選択します。または、メインメニューからツール | Composer | 依存性の管理を選択します。

  2. 開いているComposerの依存関係を管理するダイアログで、おそらく検索フィールドを使用して使用可能なパッケージ リストから behat/behat パッケージを選択します。

    インストールするバージョンリストから該当するバージョンを選択します。

  3. 必要に応じて、設定の隠し領域を展開して詳細インストールオプションを指定します。コマンド・ライン・パラメーターフィールドに、追加のコマンド行パラメーターを入力します。オプション --devを指定することをお勧めします。この場合のパッケージは、デフォルトの require セクションではなく、composer.json ファイルの require-dev セクションに追加されます。

  4. インストールをクリックします。

Behat公式サイト(英語)からBehatをインストールする方法の詳細をご覧ください。

プロジェクトでPhpStormとBehatを統合する

ローカルのPHPインタープリターを使用している場合、PhpStormは自動的にBehatの初期設定を実行します。

Behatを自動的に設定する

  1. behat.yml または behat.yml.dist 構成ファイルをプロジェクトルートに保存します。

  2. ComposerとBehatをインストール .

PhpStormはテストフレームワークページおよびBehat実行/デバッグ構成上にローカルフレームワーク構成を作成します。

手動でBehatを設定できます。リモート PHPインタープリターを使用している場合は、手動設定が必要です。

Behatを手動で設定する

  1. 設定/環境設定ダイアログ(Ctrl+Alt+S)で、言語とフレームワークノードを展開し、PHPにあるテスト・フレームワークを選択します。

    開いているテストフレームワークページの中央ペインで Add icon をクリックし、リストから設定タイプを選択します。

    ps_settings_php_test_frameworks.png
    • ローカル設定では、デフォルトのプロジェクトPHPインタープリターが使用されます。詳細はデフォルトのプロジェクトCLIインタープリターを参照してください。

    • リモート PHPインタープリターでBehatを使用するには、表示されたダイアログボックスで以下のいずれかの設定を選択します。

      ps_settings_php_test_frameworks_behat_choose_php_interpreter.png
  2. Behatライブラリー領域に、Behat実行ファイルまたは behat.phar アーカイブの場所を指定します。

    Behatディレクトリーまたはpharファイルへのパスフィールドの横にある icons actions refresh svg をクリックします。PhpStormはBehatのバージョンを検出し、フィールドに表示します。
  3. テスト・ランナー領域で、シナリオの起動と実行に使用する構成 YML ファイルを指定します。
    デフォルトでは、Behatはプロジェクトルートフォルダーまたは config フォルダー内の behat.yml 設定ファイルを探します。カスタム構成ファイルを指定できます。

    • デフォルト構成ファイルチェックボックスをオフにすると、Behatはプロジェクトルートフォルダーまたは config フォルダーから behat.yml 設定ファイルを使用します。そのようなファイルが見つからない場合は、テストの実行が失敗するため、構成ファイルを明示的に指定することがより信頼できる可能性があります。

    • デフォルト構成ファイルチェックボックスを選択して、独自の YML 設定ファイルを指定します。このファイルは、後ですべてのBehat実行/デバッグ設定でデフォルトとして使用されます。

      フィールドで、使用する構成ファイルの場所を指定します。パスを手動で入力するか、browseButton をクリックして、表示されるダイアログボックスでファイルを選択します。

Behatテストの実行とデバッグ

Behat機能の記述方法については、Behatドキュメント(英語)を参照してください。

Behatテストの実行またはデバッグ

  • プロジェクトツールウィンドウで、テストを実行する機能ファイルを選択し、選択したコンテキストメニューで実行 '<feature file>'またはデバッグ '<機能ファイル>'を選択します。

    ps_test_frameworks_behat_launch_tests.png

    PhpStormはデフォルトの実行構成を生成し、実行/デバッグテストセッションを開始します。

自動的に生成されたデフォルト設定を保存する

  • テストセッションが終了したら、ファイルまたはフォルダーのコンテキストメニューで保存<default_test_configuration_name>を選択します。

カスタム実行/デバッグ設定を作成する

  1. プロジェクトツールウィンドウで、実行するテストが含まれているファイルまたはフォルダーを選択し、コンテキストメニューから実行構成の作成を選択します。または、メインメニューで実行 | 構成の編集を選択してから Add icon をクリックし、リストからBehatを選択します。

  2. 開いている実行/デバッグ構成: Behatダイアログで、PHP実行ファイルに渡すオプションと引数を指定して、現在のPHP インタープリターの動作を実行およびカスタマイズするシナリオを指定します。

Behatテスト結果の監視

PhpStormは実行ツール・ウィンドウテストランナータブにおけるテスト実行結果を示します。

ps_test_result_behat.png

このタブは大きく2つのエリアに分かれています。

  • 左側の領域では、すべての単体テストをドリルダウンして、成功したテストと失敗したテストを確認できます。テストのフィルタリング、結果のエクスポート、およびコンテキストメニューコマンドを使用して特定のテストを実行したりソースコードに移動したりできます。

  • 右側の領域には、生のBehat出力が表示されます。

最終更新日: 2019年3月18日

関連事項