
CoolなEclipseプラグイン(2)
ソフトウェアの品質向上を支援するプラグイン
|
|
2.djUnit |
ソフトウェア開発において、テストを行う際に、テストがきちんと行われているかどうか検証する必要があります。テストの検証を行わないと、テスト漏れによりバグが発見できず、システム運用時に思わぬ不具合を引き起こす可能性があります。
そこで、テストの検証を行う手段として、カバレッジがあります。カバレッジはコード中のテストにより実行されたコード、もしくは、分岐の網羅性のことであり、カバレッジが100%であれば、すべてのコードがテストにより実行されたことになります。カバレッジを用いることにより、テストによりアプリケーションのコードが漏れなく実行されているかどうか確認することでテストの網羅性を検証することができます。また、テストによって実行されなかったコードを調査することにより、テスト漏れの原因を解析することもできます。djUnitを利用すると、JUnitで作成したテストのカバレッジを簡単に測定することができます。
■特長
djUnitは次のような特長を持ちます。
・JCoverageによるレポート機能
djUnitは内部でJCoverageを利用しており、グラフでパッケージ、クラスごとのカバレッジの測定結果を表示することができます。います。また、テスト漏れがあるコードをEclipseのJavaソースエディタ上で簡単に確認することができます。
・簡易レポート機能
メソッドの実行時間、Exception発生時のスタックトレース情報などを、コードを変更することなく確認することができます。
・Virtual Mock Objectsを使ったテスト
ユニットテストを行う際に、テストしたいクラスがほかのクラスに依存していると、単体テストが困難なことがあります。djUnitのVirtual
Mock Objectsの機能を利用すると、クラスに改変を加えることなく、メソッドの返却値を設定することができます。詳細はTechnical
Solution Group Wikiを参照ください。
■入手方法
下記のURLからダウンロードできます。
Eclipseのプラグインディレクトリに解凍します(執筆時の最新バージョンは、jp.co.dgic.eclipse.jdt.djunit_3.0_0.7.0-beta2)。
■使い方
まず、JUnitのテストを用意します。Eclipseのメニューから[実行]->[djunit]を選択すると、JUnitのテストが実行され、カバレッジレポートが出力されます(図5)。
![]() |
| 図5 djUnitのカバレッジレポート |
カバレッジレポートは、全体に対するレポート(Coverage Report)、パッケージごとのレポート(Packages)、ファイルごとのレポート(All Files)に分かれており、それぞれ、行の網羅率(%line)と、分岐の網羅率(%branch)が数字とグラフで表示されます。グラフの赤い場所が多いほど、メソッド、ファイル中にテストにより実行されなかったコードが多くなります。レポート画面上で、網羅率が100%でないクラスをクリックすると、そのクラスがJavaエディタ上で表示され、テストにより実行されていない部分がマーキングされます(図6)。開発者は、このマーキングされた部分が実行されるようなテストコードを書き、カバレッジが100%になるようにします。
![]() |
| 図6 未実行部のマーキング |
| 2/3 |
|
INDEX |
||
| 1.FindBugs | ||
| 2. djUnit | ||
| 3.Enerjy Thread Profiler | ||
CoolなEclipseプラグイン バックナンバー
- 第1回 Javaのプロパティファイルを編集するEclipseプラグイン
- 第2回 ソフトウェアの品質向上を支援するプラグイン
- 第3回 データベース開発を支援するプラグイン
- 第4回 Webアプリケーション開発を支援するプラグイン
- 第5回 正規表現の入力・テストを行うプラグイン
- 第6回 サンプルコードの入手をサポートするプラグイン
- 第7回 プログラミングにあると便利なプラグイン
- 第8回 RSSを表示できるEclipseプラグイン
- 第9回 データベースの利用に便利なEclipseプラグイン
- 第10回 スクリプト言語をサポートするEclipseプラグイン
- 第11回 ビルドを効率化するEclipseプラグイン
- 第12回 便利なプラグインの集大成MyEclipse
- 第13回 簡単にFlashアプリを作成できるFlexBuilder 2
- 第14回 軽量なUMLプラグインAmaterasUML
- 第15回 バージョン管理に便利なSubversiveプラグイン
- 第16回 EPFプラグインでらくらく開発プロセス管理!(入門編)
- 第17回 EPFプラグインでらくらく開発プロセス管理!(実践編)
- 第18回 お決まりコードを設計書から自動生成するblancoCsv
- 第19回 Project Zeroでスクリプト+Ajaxのアジャイル開発
- 第20回 ERダイアグラムを編集するAmaterasERDでDB設計
- 第21回 Apache LDAP StudioでLDAPはもう怖くない
- 第22回 JavaScriptを書かずにAjaxを実現するjMaki
- 第23回 Mylyn&Tracでリズムに乗ってタスクを大掃除♪
- 第24回 これはすごい!? コード品質のカイゼン化プラグイン2種
| Java Solution全記事一覧 |
TechTargetジャパン
- 並列分散処理の常識をHadoopファミリから学ぶ (2012/2/8)
並列分散処理の課題やHadoopの長所/短所、そして短所を補うHadoop関連プロジェクトの構成や概要などを簡単に紹介 - WebLogicサーバ最新版「12c」の気になる4つの特徴 (2012/1/31)
久々にメジャーアップグレードしたJavaアプリケーションサーバについて、製品担当者に軽量インストーラなどの特徴を聞いた - GitHubをもっとソーシャルに使いこなすための7つ道具 (2012/1/23)
ソースコードホスティングのGitHub周辺で便利な新サービスが続々登場しているので、まとめて紹介しよう。特に連動クラウド「fluxflex」が注目だ - 新キャラ登場!スクラムやるならRedmineとALMinium (2011/12/26)
「黒板を“かんばん”にしてたら先生に怒られた(T_T)」「管理はPC内でやればいいのよ」「承知しました」
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -


