EclipseでPHPUnitを実行できるMakeGoodの導入・設定
MakeGoodはEclipseを利用してGUI操作でPHPのテスト駆動開発を支援するツールです。
テストの実行結果がコンソールで確認ができたり、
テスト失敗箇所がIDE上で「×」として表示されたり効率的な作業が行えます。
ここではMakeGoodの導入・設定についてご紹介します。
尚、環境はWindows8x64環境で行っています。
概要
EclipseでPHPUnitを実行できるMakeGoodの導入
MakeGoodをインストールして利用する前に、
利用環境の条件があっているかを確認します。
環境の確認
今回、MakeGoodによる環境構築では、以下の状態で行っています。
対象 | バージョン | インストールパス |
---|---|---|
OS | Windows8 Pro x64 | - |
Apache | 2.4 (x64) | C:\Apache2464 |
PHP | 5.6.36 (x64) | C:\php-5.6.36-Win32-VC11-x64 |
PHAR | 1.10.5 | C:\phar |
Composer | 1.6.5 | C:\composer |
phpunit | 2.0.1 | C:\composer\vendor\phpunit\phpunit |
MakeGood | 3.1.1 | C:\eclipse_kepler\plugins\com.piece_framework.makegood.stagehandtestrunner_3.1.1.v201409021510 |
ここまでのそれぞれの作業は以下でご紹介しています。
phpunitインストール上の注意
今回、MakeGoodのインストール自体は困らなかったのですが、
MakeGoodを動かせる設定を見つけ出すのに苦労しました。
結果として以下の結論となりました。
- PHPUnitはComposerでインストールする(.pharファイル指定ではうまくいかない)
- 「piece/stagehand-testrunner」を追加でインストールする。
ですので、.pharソースファイルを利用したphpunitのインストールでは、
私の環境ではうまくいきませんでした。
併せてお読み頂ければ幸いです。
MakeGood要件の確認
2018/5/13現在MakeGoodは以下バージョンで、
それぞれの要件に合っていることを確認しておく必要があります。
Requirements
- PHP 5.3.3 or greater
- pcre
- SPL
- dom
- mbstring
- Zend Debugger or Xdebug
- Eclipse Luna (4.4), Eclipse Kepler (4.3)
- PDT 3.3, 3.2
- (optional) Stagehand_TestRunner 4.0.0 or greater
- (optional) PHPUnit 3.7.0 or greater
Installation
Package Version Stability Release Date License – – MakeGood 3.1.1 stable 2014-09-02 Eclipse Public License Release Notes
以下の、pcre、SPL、dom、mbstringはPHPのライブラリの設定にて行います。
pcreは通常既にPHPで常時有効になっています。
The PCRE extension is a core PHP extension, so it is always enabled. By default,
(抜粋)PHP: Installation – Manual
SPLはPHP5.0以降では常時有効になっています。
This extension is available and compiled by default in PHP 5.0.0.
(抜粋)PHP: Installation – Manual
domは特に設定変更を行ってPHPのインストールをしない限りは有効です。
This extension is enabled by default. It may be disabled by using the following option at compile time: –disable-dom
(抜粋)PHP: Installation – Manual
mbstringはphp.iniを編集して、以下のライブラリ読み込みを有効化します。
extension=php_mbstring.dll
mbstring is a non-default extension. This means it is not enabled by default. You must explicitly enable the module with the configure option. See the Install section for details.
(抜粋)PHP: Installation – Manual
また以下のように私はphp.iniに設定しています。
1 2 3 4 5 6 7 |
extension=php_mbstring.dll mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.encoding_translation = Off mbstring.http_input = pass mbstring.http_output = pass mbstring.detect_order = auto |
今回インストールした環境は以下であることを確認しています。
- PHP Version 5.6.36 (php-5.6.36-Win32-VC11-x64)
- PCRE(8.38 2015-11-23)
- SPL (support)
- DOM/XML (enabled)
- Xdebug(2.5.5)
- mbstring(Multibyte Support enabled)
- Eclipse Kepler (4.3)
- PDT (3.2)
- Stagehand_TestRunner (インストールしていない)
- PHPUnit 5.7.27
インストールの実行
MakeGoodはEclipseプラグインですので作業はEclipseにて行います。
Eclipseのプラグイン追加手順になりますので、以下をご確認ください。
MakeGoodのインストールが完了したら、
プロジェクトを作成(既存フォルダのインポート)して、
そのプロジェクトに対してMakeGoodの設定を行います。
プロジェクトへMakeGood設定
インストールが完了したら、Eclipse側の設定作業を行います。
MakeGoodからComposerライブラリの読み込みを行えるように、
「autoload.php」の読み込みを行うための「preload.php(名前はなんでもいい)」を作成し、
「autoload.php」までのフルパスを指定します。
プロジェクトのプロパティでMakeGoodから「preload.php」を読み込むように設定します。
「PHPUnit」タブのXML設定は特に必要ありません。
プロジェクトへテスト対象の作成
次にPHPUnitにてテストを行うサンプルクラスを用意します。
テストパターンの設定と実行確認
テスト対象のクラスが作成できたら、テスト用ソースの作成を行いますが、
手で作成しても「phpunit-skeleton-generator」を利用して自動作成しても構いません。
「phpunit-skeleton-generator」を利用するならば、
Composerを利用してのインストールがオススメです。
というか私はComposerを利用せず、動かすことはできませんでした。
オススメの使い方はメソッドを作成している時にコメント欄に、
テストパターンを事前に定義しておける「@assert」を利用した自動生成です。
正直なところ環境構築にはかなり苦労しました。
結果的に分かれば、それだけの事だったのですが、以下の注意点は踏んでおいた方が無難です。
参考
MakeGood | Eclipse Plugins, Bundles and Products – Eclipse Marketplace
Composerによるツールのインストール:PHP開発環境2015(その1) | 悠雀堂ブログ
当サイト内のコンテンツおよび画像を含むすべてにおいて、管理人アルゴリズンが著作権を保持しております。
当サイトでご紹介しております写真等につきましては著作権の放棄はしませんが、
ライセンスフリーでご利用いただいて構いません。
コンテンツを有益であると感じていただけましたら非常に光栄です。
ありがとうございます。
サイト内コンテンツを引用される際には、出典元として当サイト(個別記事)へのリンクをお願いいたします。
申し訳ございませんが、無断転載、複製をお断りさせて頂いております。
公開日:
最終更新日:2018/05/22