ローカルの SonarQube 5.1.1 サーバーをセットアップしました。C# プラグイン (バージョン 4.1) と MSBuild ランナー (バージョン 1.0) もインストールしました。次に、現在取り組んでいるプロジェクトの .NET コードベースで 2 つの別々の実行を実行しました。
- sonar-runner と C# プラグインの使用
- MSBuild ランナーの使用
両方の実行は、CLI を介して行われました。ただし、実行すると、非常に異なる結果が得られました。以下に例を示します。最初の実行では、SonarQube はコード行の数を約 956 000 と計算しましたが、2 回目の実行では、約 434 000 と「わずか」であると計算されました。後者は、いくつかの自動生成ファイルをスキップします。これらのファイル/クラスは、社内で開発された古い ORM ツールによって生成されました。
別の方法で指定されていない限り (包含/除外パターンを使用して)、MSBuild SonarQube ランナーは特定のプロジェクト内のすべての .cs ファイルを分析すると思いましたが、明らかにそうではありません。
誰かが同じ「問題」を経験したことがありますか? また、分析から自動的に除外される自動生成ファイルの種類を知っている人はいますか?