連載
» 2010年10月08日 00時00分 公開

ユカイ、ツーカイ、カイハツ環境!(17):コード探知機「Sonar」でプロジェクトの深海を探れ! (3/4)

[岡本隆史,@IT]

画面で確認

 各メトリクスをクリックすると、パッケージやコードの詳細をドリルダウンして図5・6のように確認できます。

図5 カバレッジ 図5 カバレッジ
図6 コーディング規約違反 図6 コーディング規約違反

 画面左のメニューからは、コンポーネント(パッケージ)ごとの情報、コーディング規約違反や、メトリクスの時系列での変化を見られます。

タイムマシンを使う

 メニューからタイムマシンを選択すると、時系列の変化を見られます。

図7 タイムマシン 図7 タイムマシン

 タイムマシンを利用すれば、loc(ステップ数)が増えているけどテストが追加されていないためカバレッジが下がっているというような、問題となりそうな兆候を見つけることができるでしょう。

ホットスポットを使う

 Hotpostを選択すれば、メトリクス上注意が必要なクラスや規約違反の種類などの注意すべき点のランキングが高い個所を確認できます。

図8 ホットスポット 図8 ホットスポット

監視するメトリクスの設定

 フィルタ機能により特定のメトリクスが設定した条件を満たすプロジェクト一覧を表示できます(図9)。

図9 フィルタ画面 図9 フィルタ画面

 フィルタ機能を利用するには、Sonarにログインする必要があります。

 ログインは画面上部の「Log In」リンクから行います。デフォルトでは、管理者ユーザーがユーザー名を「admin」、パスワードを「admin」で利用できるので、adminユーザーでログインして試してみてください。

ユーザー・グループの管理とアクセス制御

 Sonarにはユーザー・グループの管理とアクセス制御の機能があり、プロジェクトごとに管理者や閲覧可能者を設定できます。Sonar画面上部のConfigurationを選択すると、SECURITYの設定に対するリンクが左に表示されます。

図10 アクセス制御の設定画面 図10 アクセス制御の設定画面

 ここからユーザーやグループの作成、ロールへの追加・削除ができます。

プロファイルをカスタマイズするには?

 Sonarでは、チェックするコーディング規約や各メトリクス値の注意や警告を表示する“しきい値”の設定をプロファイルとして管理しています。このプロファイルを編集することにより、コーディング規約やメトリクスの“しきい値”をプロジェクトごとにカスタマイズできます。

 プロファイルのカスタマイズには、管理者権限でログインし、管理画面上部のConfigurationをクリックします。すると、プロファイル一覧を確認できます(図11)。

図11 プロファイル一覧 図11 プロファイル一覧

 初期状態では、次の3つのプロファイルがあらかじめ用意されています。

表3 初期状態で備わっている3つのプロファイル
プロファイル名 説明
Sonar way Sonarデフォルトのプロファイル。CheckStyleやPMDによるコーディング規約のチェック、バグ検出
Sonar way with FindBugs Sonar wayにFindBugsによるバグ検出を追加
Sun checks 主規約にCheckStyleによるコーディング規約のチェック

 画面を見ると、Sonar wayのDefault欄に緑のチェックマークが付いていおり、デフォルトではSonar wayプロファイルが利用されていることが分かります。

デフォルトのプロファイルの変更

 プロファイルの「set as default」ボタンを押すと、デフォルトのプロファイルを変更できます。

プロファイルの詳細を表示

 プロファイルの名前をクリックすると、プロファイルの内容の詳細を確認できます(図12)。「Coding rules」タブでは、コーディングルールを、「Alerts」タブでは、各メトリクスの注意や警告を表示する“しきい値”を変更できます。

 また、「Projects」タブではどのプロジェクトでプロファイルを利用するか指定します。

図12 プロファイルの詳細画面 図12 プロファイルの詳細画面

プロファイルのカスタマイズ

 最初から用意されている3つのプロファイルは、適用するプロジェクト以外は変更できません。

 コーディング規約やメトリクスの“しきい値”をカスタマイズしたプロファイルを作成するには、プロファイル一覧画面で、カスタマイズするプロファイルを選択し、「copy」ボタンを押し、別の名前のプロファイルにコピーし、コピーしたプロファイルを編集してカスタマイズします。

 次ページでは、Sonarのプラグインの使い方や、デフォルトのDBをMySQLに変更する方法も解説します。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

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

メールマガジン登録

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