Help us understand the problem. What is going on with this article?

PHPUnitをPhpStormで実行する with Laradock

More than 1 year has passed since last update.

PhpStormでPHPUnitを実行できるように設定したので、その手順をまとめて見ました。
ちなみに、Laradockで環境を構築していることを前提としています。

Xdebugのインストール

.env(laradcok)を編集します

- WORKSPACE_INSTALL_XDEBUG=false
+ WORKSPACE_INSTALL_XDEBUG=true

- PHP_FPM_INSTALL_XDEBUG=false
+ PHP_FPM_INSTALL_XDEBUG=true

xdebug.iniの編集

workspace/xdebug.ini php-fpm/xdebug.ini の設定を書き換える

- xdebug.remote_host=dockerhost
+ xdebug.remote_host=host.docker.internal
- xdebug.remote_connect_back=1
+ xdebug.remote_connect_back=0
- xdebug.remote_port=9000
+ xdebug.remote_port=9001

- xdebug.remote_autostart=0
+ xdebug.remote_autostart=1
- xdebug.remote_enable=0
+ xdebug.remote_enable=1
- xdebug.cli_color=0
+ xdebug.cli_color=1

dockerイメージを再ビルド

docker-compose build workspace php-fpm

これで、xdebug のインストールが完了しました。

PhpStormでの設定

Docker の設定

Preferences > Build, Execution, Deployment > Docker+ をクリックする。

Name : お好きな名前でOKです。

Connect to Docker daemon with : Docker for Mac

Connection successful と表示されればOKです。
phpstorm_phpunit1.png

Interpreterを指定する

Preferences | Languages & Frameworks | PHP にある ・・・ をクリックする。
phpstorm_phpunit1.png

そして、こんな画面が出てきたら左上の + をクリックしてください。
phpstorm_phpunit3.png

From Docker, Vagrant, VM, Remote... を選択してください。
↓のウィンドウが表示されたら、Docker を選択して、Server には先程作成した、Laradock Dockerを選択してください。(Image name と PHP interpreter pathは自動で見つけてきてくれます)
phpstorm_phpunit4.png

そして、OKを押すと、下のウィンドウが表示されます。

内容に間違いがなかったら、OKを押してください。
phpstorm_phpunit5.png
phpstorm_phpunit6.png

このままだと、うまく動作しないのでパスを変更します。

Docker container 欄の右側にあるフォルダアイコンをクリックしてください。
phpstorm_phpunit7.png

Container path の欄に /var/www/src と入力してください。
(ペンのアイコンをクリックしたら編集できます)

PHPUnitの設定

Preferences > Languages & Frameworks > PHP > Test Frameworks で + をクリックして、PHPUnit By Remote Interpreter を選択してください。

Interpreter には先ほど作成したものを選択してください。(僕の場合はlaradock-workspace です)
phpstorm_phpunit8.png

PHPUnit libraryUse Composer autoloader を選択する。
Path to script にはworkspaceコンテナ内の autoload.php を指定する。
versionが表示されたらOKです。

次に メニューバー > Run > Edit Configrations をクリックしてください。
phpstorm_phpunit9.png

Defined in the configuration file を選択して、Use alternative configuration file にチェックを入れて、ホストのlaravel projrct内にある phpunit.xml を指定する。

これで、PhpStormでテストを実行することができるようになりました!
phpstorm_phpunit10.png

まとめ

Testクラスで、control + r or Command + r を押すとファイル内の全てのテストメソッドが実行されます。
特定のテストメソッドを実行したい場合は、control + option + r を押して、メソッド名を選択すると実行できると思います。

yukure
uluru
クラウドワーカーを活用した事業を行う会社(クラウドソーシング、入札情報速報サービスなどを運営)
https://www.uluru.biz/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away