試験工程で利用可能な機能を比較する!

2007年9月27日(木)
木村 聡宏竹添 直樹

試験を進めていく上で便利な機能を比べる

   これまで主にWeb開発での設計から製造工程で利用可能な機能について紹介しました。連載の最終回となる今回は、試験工程において利用可能な機能を取り上げます。

   現在、Java開発における試験工程では、テスティングフレームワークを利用するケースが多くなっており、特に単体試験ではJUnitを利用するの が一般的になっています。Eclipse、JDeveloperともに、JUnitの利用をはじめ、試験を進めていく上で便利な機能が提供されています。 今回はその中でも以下の3つの機能について紹介します。


  • 静的解析(静的テスト)
  • ユニットテスト(動的テスト)のカバレッジ
  • プロファイリング
表1:試験を進めていく上で便利な機能

   なおバージョンについては、Eclipse 3.3およびJDeveloper 11g(Technical Preview版)を使用します。

静的解析(静的テスト)とは

   対象となるソフトウェアについて、プログラムを実行しないで欠陥や欠陥につながる問題点を見つけだすテストを「静的テスト」といい、ツールなどを用いて自動的に行うことを「静的解析」といいます。

   Eclipseには簡易ですが標準で静的解析の機能が備わっており、検出した問題(不要なimport文など)が問題ビューに表示されます。

Eclipse標準での静的解析
図1:Eclipse標準での静的解析
(画像をクリックすると別ウィンドウに拡大図を表示します)

   オープンソースのプラグインを併用することで、より厳密にチェックを行うことができます。ここでは静的解析を行う2つのプラグインを紹介します。


  • CheckStyle
  • FindBugs
表2:静的解析を行うプラグイン

CheckStyle

   主に作成したソースコードがコーディング規約を遵守しているかについてチェックするプラグインです。以下のURLから入手することができます。


   CheckStyleはJavadocコメントや空白スペースの挿入位置、変数名の命名規約など、コーディング規約に対するチェックをはじめ、空のステートメントなどコーディング上の問題についての検出も行います。

CheckStyleの設定
図2:CheckStyleの設定
(画像をクリックすると別ウィンドウに拡大図を表示します)

   CheckStyleを有効にすると、ルールに違反したコードが問題ビューに表示され、選択するとソースコードの該当箇所に移動できます。

CheckStyle実行結果
図3:CheckStyle実行結果
(画像をクリックすると別ウィンドウに拡大図を表示します)

FindBugs

   FindBugsはプログラム中に存在するバグとなりやすい部分(NullPointerExceptionの発生する可能性のある箇所など)を、クラスファイルを検査し抽出してくれます。FindBugsは下記URLから入手することができます。


FindBugsの設定
図4:FindBugsの設定
(画像をクリックすると別ウィンドウに拡大図を表示します)

   自動的に実行するように設定するか、右クリックメニューからその都度実行すると、検出した問題が問題ビューに表示されます。

FindBugs実行結果
図5:FindBugs実行結果
(画像をクリックすると別ウィンドウに拡大図を表示します)
NTTデータ先端技術株式会社

大手SI企業を経て、NTTデータ先端技術株式会社に入社。前職では、約8年間JavaによるWebアプリ ケーションの開発に携わる。Eclipseを使用していると、ふとteratermでjavacコマンドを叩いていた頃を懐かしく感じてしまう。現在はテ ストプロセスの改善を行う業務で、テスト支援ツールの開発に従事している。

NTTデータ先端技術株式会社
NTTデータ先端技術に勤めるしがないプログラマ。最近はOSS、アジャイルをキーワードに活動しつつ、余暇を利用して書籍の執筆などを行っている。著書に独習JavaScript(共著、翔泳社刊)など。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています