LoginSignup
7
4

More than 5 years have passed since last update.

PHPStorm で PHPUnit のテストをステップ実行する 2017年3月版

Last updated at Posted at 2017-03-02

はじめに

以下のような環境で PHPUnit をステップ実行する手順を記載します。似たような情報はいくつか見つかったのですが、ローカルとリモートのフォルダ構成が異なる場合に設定が必要な Path Mappings のところが書いてなかったり、UI が少し違っていたりました。誰かのお役に立てば幸いです。

  • macOS Sierra
  • PHPSTORM 2016.3.2
  • PHP 7.1.1
  • PHPUnit 5.7.9
  • vagrant (リモートデバッグ)

手順

  1. Preferences > Build, Execution, Deployment > Deploy+ を押します。Add Server 画面で name を vagrant、typeSFTP に設定して OK

  2. Connection タブに vagrant との接続設定を書きます。 Connection タブはこんな感じになると思います。
    スクリーンショット 2017-03-02 15.36.03.png

  3. Mapping タブはこんな感じになると思います。
    スクリーンショット 2017-03-02 15.41.19.png

  4. PreferencesLanguages & Freamworks > PHPCLI Interpreter という項目があり、この ... を押します。CLI Interpreters という画面がポップアップするので、+ を押して Remote... を追加します。Vagrant を選び、接続情報を入力し、OK
    スクリーンショット 2017-03-02 15.46.00.png

  5. さらに OK を押して、CLI InterpretersRemote PHP 7.1 がセットされたことを確認して OK
    スクリーンショット 2017-03-02 15.48.39.png

  6. Path mappings... をクリックして Edit Project Path Mappings を開きます。

  7. + を押して列を追加し、 Local PathRemote Path 配下のフォルダ構成が一致するようにそれぞれのパスを設定します。
    スクリーンショット 2017-03-02 15.55.06.png

  8. PreferencesLanguages & Freamworks > PHP > PHPUnit+。プルダウンが出るので By Remote Interpreter を選びます。下記のように設定して OK
    スクリーンショット 2017-03-02 15.58.53.png

テスト実行

  1. Edit Configurations ... をクリックし、Run/Debug Configurations を開きます。
    スクリーンショット 2017-03-02 16.06.00.png

  2. + を押し、PHPUnit をクリックし、以下のように設定します。File はテストコード (xxxTest.php など) を指定します。なぜか File を二回指定しないと Class に文字列が入ってこない現象が頻発しています。同じ現象が発生した場合は再度 File から同じファイルを指定してみてください。
    スクリーンショット 2017-03-02 16.08.41 1.png

  3. 作成した Configuration スクリーンショット 2017-03-02 16.17.27.png
    を選択し スクリーンショット 2017-03-02 16.16.45.png をクリックします。うまく動作するとこんな感じになります。
    スクリーンショット 2017-03-02 16.19.58.png

  4. ブレークポイントをしかけて Debug スクリーンショット 2017-03-02 16.16.45.png してみましょう。
    スクリーンショット 2017-03-02 16.22.28.png

以上です。

7
4
0

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
7
4