連載
» 2009年09月29日 00時00分 UPDATE

ユカイ、ツーカイ、カイハツ環境!(8):JUnit/FindBugs/PMDなどを総観できるQALab/Limy (1/3)

[岡本隆史,@IT]

便利なEclipseプラグイン集「Limy」とは

 「Limy」というEclipseプラグインをご存じでしょうか。これは、コード支援機能やプロジェクトの品質管理機能、プロパティエディタやVelocityテンプレートエディタなどが含まれている便利なEclipseプラグイン集です。

r1394x_bor_rou_sha_w400.jpg

 今回は、Limy Eclipseプラグインに統合されているソフトウェアの品質レポートを生成する「QALab」の機能を利用したソフトウェア品質管理やLimy EclipseプラグインのQALab実行機能について紹介します。


さまざまな品質管理機能を一括実行/総観できる「QALab」

 Javaで品質管理を行うツールとして、さまざまなツールが提供されていますが、それらを利用するには1つずつセットアップする必要があり面倒です。

 ObjectLABにより開発されるQALabを利用すると、さまざまな品質管理ツールを一括して実行でき、また、開発中のソフトウェアのある瞬間の品質だけでなく、時系列を追った遷移も見ることができるようになります。

QALabはLimy Eclipseプラグインでもっと簡単になる

 QALabはAntのタスクやMavenのプラグインなどから利用できますが、Limy EclipseプラグインのQALab実行機能を利用すると、ボタン1つでQALabを実行でき、ソースコードの品質を管理するうえでのさまざまな統計情報を出力できます。

図1 Limy Eclipseプラグインを利用したQALabのレポート画面 図1 Limy Eclipseプラグインを利用したQALabのレポート画面

QALabで扱う7つの品質管理ツール

 QALab自身は、下記の7つのツールの実行結果を統合してレポーティングできます(アルファベット順、下記リストはインデックスになっています)

 そのほか、TODOコメントの数ステップ数の遷移などの統計も取ることができます。

 上記の個々のツールをセットアップすれば、それぞれのレポートを取得できますが、Limy EclipseプラグインのQALab実行機能を利用すると、面倒なセットアップなしにEclipse上からボタン1つで上記のツールのレポートを取得できます。それでは、1つ1つを見ていきましょう。

CheckStyle

 コーディング規約違反をチェックします。開発者によるコーディングスタイルのばらつきを防ぎ、統一感の取れたコードにすることができます。CheckStyleの詳細については下記記事をご参照ください。

r13pmv_bor_rou_sha_w400.jpg

Cobertura

 ユニットテストを実行した際のカバレッジを算出します。テストケースによるテストの網羅性の確認と、テストケースにより実行されていないコードを確認できます。

FindBugs

 バグ不具合が混入している可能性があるコードを検出します。ストリームクローズ漏れマルチスレッドによる実行の不具合の検出やパフォーマンスが低下する可能性があるコードなど、検出できるバグは多岐に渡ります。

 FindBugsはコンパイル済みのクラスファイルに対して検証するため、コンパイラの最適化により除去されるデッドコードやコーディング規約違反などは検出できません。FindBugsの詳細については下記記事をご参照ください。

r135az_bor_rou_sha_w400.jpg

JavaNCSS

 クラス数、メソッド数、Javadoc数、コードの複雑さ(CCN:Cyclic Complexity Number)、コメントにより説明されていないコードのステップ数(NCSS::Non-Commenting Source Statements)などのソースコードのメトリクス(統計情報)を取得できます。

 直接的なバグやコーディング規約違反などは指摘してくれませんが、複雑なメソッドをリファクタリングして分かりやすいコードに分割したり、コメント不足のコードを発見し、コメントを充実させるなど、保守しやすいコードにするのに役立ちます。

 次ページでは、引き続き残りの3ツールを紹介し、Limy Eclipseプラグインを使い始めます。

       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。