PhpStorm 2025.1 ヘルプ

PHP テストを生成する

PhpStorm で新しいテストクラスを作成する最も簡単な方法は、ソースコードから呼び出せる専用のインテンションアクションを使用することです。この場合、IDE は新しいテストクラスファイルを作成し、選択した PHP クラスのテストスタブを生成します。

このアクションは、PHPUnitPestCodeceptionPHPSpec テストフレームワークで使用できます。

新しいテストを追加する

  1. エディターで、テストを作成する PHP クラスまたはメソッド宣言内にキャレットを置き、Alt+Enter を押して、新しい PHP テストを作成するを選択します。

    新しい PHP テストを作成するダイアログが開きます。

    create new php test phpunit dialog
  2. 新しい PHP テストを作成するダイアログで、以下を指定します。

    • テストファイルテンプレート : テストクラスが生成されるベースとなるフレームワークテンプレート。PhpStorm は、サポートされている次のテストフレームワークを使用してテストクラスを生成するための組み込みのファイルテンプレートを提供します: PHPUnitPestCodeceptionPHPSpec

    • 名前 : PhpStorm は、選択したテストフレームワークの命名規則に従って、本番クラス名から名前を自動的に作成します。例: PHPUnit テストファイルの場合は、<MyClass>Test.php になります。

    • ディレクトリ : テストクラスのフォルダー。これは、本番環境のクラスのディレクトリと名前空間、設定されたテストソースのルートとその PSR-4 パッケージ接頭辞、または対応するテストフレームワークの設定ファイルで指定された値に基づいて自動的に提案されます。パス補完を使用するには、Ctrl+Space を押してリストからパスを選択してください。

    • 名前空間 : PhpStorm は、設定された PSR パッケージの接頭辞とフレームワーク固有の設定ファイルに指定された値に基づいて、名前空間を自動的に補完できます。名前空間補完を呼び出すには、Ctrl+Space を押してください。

    • テストメソッドスタブを生成する本番クラスメソッドの横にあるチェックボックスを選択します。親クラスから継承されたメソッドを含めるには、継承メソッドの表示チェックボックスを選択します。

      PhpStorm はテストメソッドの名前を test<production method> として自動的に作成します。テストメソッドスタブの生成に使用されるコードテンプレートは、ファイルおよびコードテンプレート設定ページのコードタブでカスタマイズできます。

テストとそのテスト対象の間を移動する

  1. エディターでテストクラスまたはテスト対象クラスを開きます。

  2. エディターのコンテキストメニューから移動 | テスト対象を選択するか、Ctrl+Shift+T を押します。

    このクラスのテストが 1 つしかない場合、IDE はすぐにそのクラスに移動します。それ以外の場合は、ポップアップから必要なテストを選択するか、新しいテストを作成するように求められます。

    Navigate to test from test subject

PHP のコンテキストでは、PHPUnit および Codeception テストを操作するときに、@covers(英語) アノテーションを使用してテストクラスまたはメソッドとそれらのテスト対象間のリンクを維持できます。

このようにして、たとえ彼らの名前が PHPUnit の命名規則(英語)に従わなくても、テストとテスト対象の間を移動することは可能でしょう:

class Person { public function getAge() {} } /** @covers Person */ class TestForPersonClass extends TestCase { /** @covers Person::getAge */ public function testCorrectAgeIsReturned() {} }

関連ページ:

PHPUnit

PhpStorm は、PHPUnit テストフレームワークとの統合による PHP アプリケーションの単体テストをサポートしています。始める前に:ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成の説明に従って、PHP インタープリターが PHP ページの PhpStorm に設定されていることを確認してください。PHPUnit をダウンロードしてインストールする:開始する前に、Composer がマシンにインストールされ、Composer 依存関係マネージ...

Pest

PhpStorm には、Pest テストフレームワークのサポートが付属しています。Pest テストを実行したり、コードカバレッジで実行したり、デバッグしたり、Pest は並行してテストするを実行したり、Pest 3.0 以降では PhpStorm から Pest 変異検査を実行したりできます。IDE は Pest 期待 API を理解するため、Pest アサーションおよびユーザー定義のテストメソッドを操作するときに、コード補完の使用、使用箇所の検索、その他のコーディング支援機能を使用できます。Pe...

Codeception

PhpStorm は、Codeception テストフレームワークバージョン 2.2.0 以降でユニット、機能、および受け入れテストを実行するためのサポートを提供します。始める前に:ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成の説明に従って、PHP インタープリターが PHP ページの PhpStorm に設定されていることを確認してください。Codeception をダウンロードしてインストールする:開始する前に、Composer がマシンにイン...

PHPSpec

PhpStorm を使用すると、PHPSpec ツールセットを使用して仕様を実行することで、ビヘイビア駆動開発を実践できます。始める前に:ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成の説明に従って、PHP インタープリターが PHP ページの PhpStorm に設定されていることを確認してください。Composer と一緒に PHPSpec をインストールする:開始する前に、Composer がマシンにインストールされ、Composer 依存関係マ...

ファイルテンプレート

ファイルテンプレートは、プロジェクトツリーのコンテキストメニューのメニューまたは新規セクションを使用して作成する新しいファイルの既定の内容の仕様です。作成するファイルの種類に応じて、テンプレートは、その種類のすべてのファイルに期待される初期コードとフォーマットを提供します (業界または言語の標準、企業ポリシー、その他の理由に従って)。PhpStorm は、新しいファイルを作成するときに提案される、サポートされているすべてのファイルタイプの定義済みテンプレートを提供します。ファイルテンプレートの管...

プロジェクトで PHP 名前空間を構成する

PhpStorm は、PHP の名前空間名をディレクトリ構造にマップする必要があることを規定する PSR-0/PSR-4 オートロード標準をサポートします。PhpStorm でソースルートタイプでマークされたディレクトリはネームスペースのルートとみなされ、その下に作成されるすべてのディレクトリは別個のネームスペースとみなされます。ソースルートタイプが設定されている場合、新しいクラス / インターフェースなどを作成するときに、PhpStorm によって名前空間名が自動補完されます。このディレクトリ内に...