はじめに
以下のような環境で PHPUnit をステップ実行する手順を記載します。似たような情報はいくつか見つかったのですが、ローカルとリモートのフォルダ構成が異なる場合に設定が必要な Path Mappings
のところが書いてなかったり、UI が少し違っていたりました。誰かのお役に立てば幸いです。
- macOS Sierra
- PHPSTORM 2016.3.2
- PHP 7.1.1
- PHPUnit 5.7.9
- vagrant (リモートデバッグ)
手順
Preferences
>Build, Execution, Deployment
>Deploy
で+
を押します。Add Server
画面でname
を vagrant、type
をSFTP
に設定してOK
。Connection
タブに vagrant との接続設定を書きます。Connection
タブはこんな感じになると思います。
Preferences
のLanguages & Freamworks
>PHP
にCLI Interpreter
という項目があり、この...
を押します。CLI Interpreters
という画面がポップアップするので、+
を押してRemote...
を追加します。Vagrant を選び、接続情報を入力し、OK
。
さらに
OK
を押して、CLI Interpreters
にRemote PHP 7.1
がセットされたことを確認してOK
。
Path mappings
の...
をクリックしてEdit Project Path Mappings
を開きます。+
を押して列を追加し、Local Path
とRemote Path
配下のフォルダ構成が一致するようにそれぞれのパスを設定します。
Preferences
のLanguages & Freamworks
>PHP
>PHPUnit
で+
。プルダウンが出るのでBy Remote Interpreter
を選びます。下記のように設定してOK
。
テスト実行
Edit Configurations ...
をクリックし、Run/Debug Configurations を開きます。
+
を押し、PHPUnit
をクリックし、以下のように設定します。File
はテストコード (xxxTest.php など) を指定します。なぜかFile
を二回指定しないとClass
に文字列が入ってこない現象が頻発しています。同じ現象が発生した場合は再度File
から同じファイルを指定してみてください。
以上です。