Allied ArchitectsAllied ArchitectsEngineer Blog

PHPUnitをEclipseから実行できるプラグイン「MakeGood」が便利です

2012/03/23 PHP

はじめまして、アライドアーキテクツの伊藤です。

アライドでは主にPHPで開発しています。IDEはEclipseであったりNetBeansであったりVimであったり各メンバーが各々好きなものを使っているのですが、私はかなり少数派(たぶん自分だけ)のEclipseを使っています。

さて、EclipseでPHP開発をする為に便利なプラグインを色々入れているのですが、その中でもEclipse上からPHPのユニットテストを実行する事ができるナイスなプラグイン「MakeGood」を紹介したいと思います。

参考までに私の開発環境は次の通りです。

Mac OS X 10.7.2

PHP 5.3.6

Eclipse PDT 2.2.1

xdebug 2.1.2

PHPUnit 3.5.15

MakeGood 1.7.0 ※現時点で1.9.0がリリースされているようです。

 

MakeGoodのインストール

ここではMakeGoodのインストール方法を説明します。(※PDT、PHPUnitなどは予めインストールされている前提で話を進めてしまいます。ごめんなさい)

1. Eclipseのメニュー「Help」から「Install New Software」を選択する。

2. ダイアログが表示されるので、「Work with:」に「http://eclipse.piece-framework.com/」と入力。関連するプラグインにチェックを入れて「Next>」をクリックする。

3. ライセンスに同意して「Finish」をクリックする。

4. 下図のダイアログが表示されるので、チェックを入れて「OK」をクリックする。

5. Eclipse再起動を促されるので「Restart Now」をクリックしてEclipseを再起動する。

ここまででインストールは完了です。

 

MakeGoodの設定

1. Eclipseのメニュー「Eclipse」から「環境設定」を選択する。

2. PHP Executablesを設定する。

3. Debugを設定する。

4. PHPプロジェクトを右クリックして、MakeGoodの設定をする。

これで設定は完了です。

 

テストの実行

さて実際にテストを実行してみましょう。次のようなテストケースがあったとします。

エディタ内で右クリック→「テストの実行」→「クラス」を選択するとクラス全体のテストが実行されます。「コンテキスト」を選択すると、functionの上にカーソルがある場合はそのfunctionのみ、クラス名の上にカーソルがある場合はクラス全体のテストが実行されます。自分はコンテキスト実行をCommand + Shift + X + Tのショートカットを割り当ててすぐ実行できるようにしています。

さて、いざ実行してみると…

おお!結果が表示されましたね。テストが実行されない場合は、include Pathにphpunitが設定されているかも確認してみてください。

ちなみにテストが失敗した場合は次のような表示になります。

EclipseでJUnitを実行した時とほとんど変わらないUIですね。これでEclipse上でのユニットテストが格段に使いやすくなると思います。みなさんも是非導入してユニットテスト生活を充実させましょう!

アライドアーキテクツでは、一緒に働く仲間を随時募集しています。是非一度採用サイトを覗いてみてください。お待ちしております。

  • cobonas
  • プログラマ
  • 元Javaプログラマ。現在はScala/PlayでWeb開発と、SwiftでiOSアプリ開発をしています。 Unitテストとか書いてる時が一番楽しかったりします。

RELATION ENTRY

Play Framework(Play2)(Scala)のTips Part3:Akkaを使った非同期/バッチ処理(Advent Calendar 20日目)

Play Framework(Play2...

2014/12/20 Scala

この記事はアライドアーキテクツAdvent Calendar 20日目の記事です。 どうも。伊藤(係長)です。 今日は他の方に乗っ取られる事もなく無事に書くことができます。 今回はAkkaを使った非同期処理やバッチ処理についてです。 通常、非同期処理をJavaとかで書こうと思ったら、ちょっとメン...

続きを読む

Play Framework(Play2)(Scala)のTips Part2:Specs2とMockitoでテストを書く(Advent Calendar 8日目)

Play Framework(Play2...

2014/12/8 Scala

この記事はアライドアーキテクツAdvent Calendar 8日目の記事です。 どうも。謎の刺客Tarou Yamadaさんにカレンダーを乗っ取られてしまった伊藤(係長)です。 気を取り直して、今回はSpecs2とMockitoを使ったユニットテストのお話を書きます。 ■Specs2とは ...

続きを読む

cobonasの記事一覧へ

ページTOPへ