FxCop Integrator 2.0.0 ベータ版をリリース

FxCop Integrator 2.0.0 のベータ版をリリースしました。CodePlex のプロジェクトサイトからダウンロードできます。

FxCop Integrator は Visual Studio 2010 (Pro 以上) に FxCop を統合して、Premium や Ultimate で実装されている「コード分析」と同じように実行できるようにする、Visual Studio の拡張機能です。コマンドラインオプションの細かい設定などを意識せず、VS2010 から簡単に FxCop が実行できます。また、分析結果のフィルタリングや FxCop のルールの詳細を表示する機能も実装しています。

バージョン 2.0.0 では、コードメトリクスを測定する Visual Studio Code Metrics Power Tools 10.0 のサポートの他、ユーザから提案されたいくつかの新機能を実装しています。


Visual Studio Code Metrics Power Tools 10.0 の統合
FxCop Integrator 2.0.0 では、Permium や Ultimate で実装されている「コードメトリクス」機能のコマンドライン版、Visual Studio Code Metrics Power Tools 10.0 もサポートしました。FxCop と同じように、ソリューションエクスプローラのコンテキストメニューから簡単に実行させることができます。
support_code_metrics

実行すると、FxCop の結果と同じようにコードメトリクス測定結果の一覧が表示されます。もちろん、フィルタリングや該当のソースコードをフォーカスする機能もサポートしています。
image

FxCop と Metrics の両方をサポートしたので、コード分析を実行するメニューを複数に分割しました。
  • [Code Analysis] : FxCop と Metrics を両方同時に実行します。
  • [More Tasks…] > [Inspect XXX] : FxCop のみを実行します。
  • [More Tasks…] > [Calculate Metrics] : Metrics のみを実行します。

Metrics を使うつもりがない場合は、バージョン 1.X 系と同様に、[Code Analysis] メニューに FxCop だけを実行させるよう、オプションで挙動を変更することができます。
image


複数プロジェクト、単一ファイルのコード分析のサポート
バージョン 1.X 系は、ソリューションに含まれる全てのプロジェクトの分析か、単一のプロジェクトの分析のみが可能でしたが、2.0.0 では選択中の複数のプロジェクトをまとめて分析することが可能です。
image

また、特定のファイルに含まれる型のみをコード分析にかける機能も実装しました。ただし、ソースコードが C# か VB.NET の場合のみ利用可能です。また、コードメトリクスの測定はファイルレベルでは実行できません (Metrics 自体が型単位のメトリクス測定をサポートしていないため)。
image


SuppressMessage 属性適用の補助
ルール詳細ウィンドウに、該当のルール違反を抑制するための Suppress Message 属性が表示されるようにしました。
image


分析結果のエクスポート
分析結果ウィンドウに、[Export] メニューを追加しました。分析結果を CSV 形式でエクスポートすることができます。
image


参照アセンブリ解決プロセスの改善
バージョン 1.X 系では、参照アセンブリ検索ディレクトリは、GAC と分析対象アセンブリが保存されているディレクトリのみとなっていました。そのため、プロジェクトの参照設定によっては、アセンブリが解決できずにコード分析が失敗してしまうことがありました。
バージョン 2.0.0 では、FxCop や Metrics でアセンブリ参照エラーが発生した場合、プロジェクトの参照設定からそのアセンブリがどこにあるか探し出し、FxCop や Metrics のアセンブリ検索パスに追加して自動的にコード分析をリトライする機能を実装しました。
この機能改善により、アセンブリ参照エラーによるコード分析の失敗は発生しなくなるはずです (リトライが発生した場合は、その分若干分析完了までに時間がかかりますが)。


その他の改善やバグフィックス
上記以外にも、細かい機能改善やバグフィックスを行っています。


正式版は 11 月下旬から 12 月上旬にリリースする予定です。

Comments

Popular posts from this blog

TFS: 別PCでのチェックアウトを取り消す

WPF の RichTextBox に文字列を設定する&取り出す

WPFアプリにアニメーションGIFを表示させる