Quick JUnitで快適TestNG生活

何を言っているのか分からねーと思うが(ry


たまたま Quick JUnit を使う機会があって、テスティングペアの切り替えやテストの実行がワンタッチでできることにいたく感動したんだけれども、いかんせん JUnit ではパラメータ化テストが面倒くさい。
その点、TestNGは至れりつくせりということで、「Quick TestNG」がないものかと Google 先生に尋ねてみたものの、簡単には見つからなかった。
なければ作ればいいじゃない、とも思ったけど、なんと TestNG には JUnit からの migration 機能があるとのこと。


これはいけるんではと思って試したところ、うまくいったのでメモ。
試した Eclipse は 3.7 Indigo。

事前設定

まずは Quick JUnitTestNG のインストール。
インストール方法の詳細は各HPで。


続いて Quick JUnit のショートカットキーを TestNG のものに差し替える。
[ウィンドウ]→[一般]→[キー]を開いて以下の変更を行う。

コマンド 変更前 変更後
JUnit テスト Ctrl+0 アンバインド
Junit デバッグ Ctrl+Shift+0 アンバインド
Run TestNG Test Alt+Shift+X, N Ctrl+0
Debug TestNG Test Alt+Shift+X, G Ctrl+Shift+0

変更後のショートカットキーはお好みで&他のショートカットキーも必要に応じて変更するといいかも。

プロジェクト作成時の操作

TestNG をプロジェクトの依存ライブラリーに追加する。
プロジェクトの[プロパティ」→[Javaのビルド・パス]→[ライブラリー]で[ライブラリーの追加]をクリックし、「TestNG」を追加する。

テストクラス作成時の操作

テスト対象のクラスで Ctrl+9 すると自動的にJUnitテストクラスが作成される。
この時、JUnit をビルドパスに追加するか聞かれるので追加する*1


作成されたテストクラス内でクイックフィックスを開き(Ctrl+1)、「Convert to TestNG」を選択する。
(パッケージエクスプローラ上から右クリック→ [TestNG]→[Convert to TestNG]でも可)


あとはTestNG用のテストクラスに変換されるので Ctrl+9 で TestNG が実行できる。



これでTDDも捗るというものよ。

*1:追加しなくても問題ないけど、毎回聞かれるので追加しておく