djUnitプラグインは、テスト状況 (テストの実施有無) をJavaコード単位でチェックし、チェック結果のレポートを出力してくれる plug-in です。
レポートからテストが行われていないコードを発見できるため、単体テストの品質向上が実現できます。
djUnitプラグインも updateサイトを公開しているので、「新規ソフトウェアのインストール」メニューからのインストールをおこないます。
(*) インストールの詳細は「Eclipse プロパティエディタプラグイン (CentOS 5.4 64bit) 編」の「1. updateの登録」「2. インストール」を参照してください。
接続テストで問題ないことを確認できればOKです。
「djUnit plugin for Eclipse 3.5.x 0.8.5」 をチェックし「次へ」を選択、インストールを最後まで完了させてください。
その後の -clean オプション付再起動を忘れないでください。
プロジェクトを選択し、右クリックメニューから「プロパティー」を選択することで表示可能です。
左のメニューに「djUnit」が追加されていればプラグインのインストールは完了しています。
「Eclipse JUnitプラグインの使い方 (JUnit 4) 編」で作成した SampleUtilitiy.java と SampleUtilitiyTest.java をサンプルとして使用します。
SampleUtilityTest.java を選択した状態で右クリックメニューから「実行」-「djUnit テスト」を選択してください。
「jUnit テスト」を選択した場合と同様に単体テストが始まりますが、テスト終了後に「djUnit ガバレッジ・レポート」が出力されます。
「%line」項目が 100% となっていません。
このレポートは、SampleUtilitiy.java に未テストのコードが存在することを意味します。
「test.SampleUtilitiy」リンクを選択すると、該当個所のソースが表示されます。
どうやら、例外発生時のケースが漏れていたようです。
SampleUtilitiy.java#getJapaneseHello(int) のこの箇所です。
djUnitを再実行すると、
今度は「%line」項目が 100% となりました。
これで、SampleUtilitiy.java の単体テストは完了です。
レポートからテストが行われていないコードを発見できるため、単体テストの品質向上が実現できます。
djUnitプラグインも updateサイトを公開しているので、「新規ソフトウェアのインストール」メニューからのインストールをおこないます。
(*) インストールの詳細は「Eclipse プロパティエディタプラグイン (CentOS 5.4 64bit) 編」の「1. updateの登録」「2. インストール」を参照してください。
1. updateサイトの登録
ロケーションに「http://works.dgic.co.jp/djunit/update/3.5.x/site.xml」を指定して updateサイトの登録を行ってください。接続テストで問題ないことを確認できればOKです。
2. インストール
「ヘルプ」-「新規ソフトウェアのインストール」から「djUnit」を選択します。「djUnit plugin for Eclipse 3.5.x 0.8.5」 をチェックし「次へ」を選択、インストールを最後まで完了させてください。
その後の -clean オプション付再起動を忘れないでください。
3. 動作確認
Eclipseの再起動後、適当なプロジェクトで「プロジェクトのプロパティー」画面を表示してください。プロジェクトを選択し、右クリックメニューから「プロパティー」を選択することで表示可能です。
左のメニューに「djUnit」が追加されていればプラグインのインストールは完了しています。
4. レポートの出力
では実際にdjUnitでレポートを出力してみます。「Eclipse JUnitプラグインの使い方 (JUnit 4) 編」で作成した SampleUtilitiy.java と SampleUtilitiyTest.java をサンプルとして使用します。
SampleUtilityTest.java を選択した状態で右クリックメニューから「実行」-「djUnit テスト」を選択してください。
「jUnit テスト」を選択した場合と同様に単体テストが始まりますが、テスト終了後に「djUnit ガバレッジ・レポート」が出力されます。
「%line」項目が 100% となっていません。
このレポートは、SampleUtilitiy.java に未テストのコードが存在することを意味します。
「test.SampleUtilitiy」リンクを選択すると、該当個所のソースが表示されます。
どうやら、例外発生時のケースが漏れていたようです。
SampleUtilitiy.java#getJapaneseHello(int) のこの箇所です。
default:
throw new IllegalArgumentException("time: " + time);
5. テストケースの追加と再テスト
SampleUtilitiyTest.java に以下のテストケースを追加します。@Test
public void testGetJapaneseHelloException() {
System.out.println("testGetJapaneseHelloException()");
SampleUtility util = new SampleUtility();
try {
util.getJapaneseHello(0);
fail();
} catch (IllegalArgumentException e) {
//OK
}
}
djUnitを再実行すると、
今度は「%line」項目が 100% となりました。
これで、SampleUtilitiy.java の単体テストは完了です。