3
1

More than 5 years have passed since last update.

【EC-CUBE4】⑦EC-CUBE本体の開発環境を整える(PHPUnit編)

Last updated at Posted at 2019-08-06

EC-CUBE4の環境構築続きです。
【EC-CUBE4】①EC-CUBE本体の開発環境を整える(インストール編)
【EC-CUBE4】②EC-CUBE本体の開発環境を整える(GitHub Flow編)
【EC-CUBE4】③EC-CUBE本体の開発環境を整える(MYSQL,MailCatcher編)
【EC-CUBE4】④EC-CUBE本体の開発環境を整える(Postgres,MailCatcher編)
【EC-CUBE4】⑤EC-CUBE本体の開発環境を整える(Xdebug、PhpStorm編)
【EC-CUBE4】⑥EC-CUBE本体の開発環境を整える(Codeception編)

前提条件

今回、DBはPostgresがローカル環境で動作している状態でテストを行います。

$ docker ps
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                                            NAMES
59ca43ad1f56        schickling/mailcatcher   "mailcatcher --no-qu…"   13 hours ago        Up 13 hours         0.0.0.0:1025->1025/tcp, 0.0.0.0:1080->1080/tcp   docker-postgres_mailcatcher_1
92fdda3109f5        postgres:10.9            "docker-entrypoint.s…"   13 hours ago        Up 13 hours         0.0.0.0:5432->5432/tcp                           postgres_container

PHPUnitの実行

テストの実行は以下のコマンドです。

$ cd <EC-CUBEがインストールされているディレクトリ>
$ vendor/bin/phpunit 

tests以下の全てのテストを実行します。

ファイルを指定して実行する

特定のファイルを実行したい場合は、ファイルのパスを指定します。

$ vendor/bin/phpunit tests/Eccube/Tests/Service/PurchaseFlow/Processor/StockReduceProcessorTest.php

メソッドを指定して実行する

特定のメソッドを実行したい場合は--filterオプションを利用し、正規表現で表します。

$ vendor/bin/phpunit --filter "/(::testRollback)( .*)?$/" tests/Eccube/Tests/Service/PurchaseFlow/Processor/StockReduceProcessorTest.php

PhpStormで実行する

PhpStormで実行すると、かなり快適にテストが実行できるようになります。
スクリーンショット 2019-08-06 22.43.16.png

メソッドの左側にある実行マークを押すと下図のようになり、テストの実行をかんたんに行うことができます。

スクリーンショット 2019-08-06 22.46.13.png

Xdebugでテストコードを追うことも可能です。

スクリーンショット 2019-08-06 22.47.11.png

参考

http://doc4.ec-cube.net/plugin_test
https://phpunit.readthedocs.io/ja/latest/

3
1
1

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
3
1