コードカバレッジ
カバレッジデータのインポートと解析
このドキュメントでは、対話的UIのコンテキストでCppDependのビルド比較機能の使い方を説明します。このドキュメントは コード差分レポート レポートのコンテキストでCppDependのビルド比較機能の使い方を説明。
CppDependが対応するカバレッジ技術は?
CppDependはカバレッジデータをインポート可能:
- Bullseye カバレッジファイル
- Cobertura
- Visual Studio Team System
- CTC++
Microsoft Visual StudioからXMLカバレッジファイルを取得する方法
Visual Studioには2つのカバレッジファイル形式があります。
- A バイナリ形式 ファイル拡張子が .coverage。これはVisual Studioからテストして得られる形式です。またはVSPerfMon.exeツールで.coverageファイルを取得することもできます。その場合、カバーする各プロジェクトを/Coverageオプション付きのVSInstr.exeツールでインストルメントする必要があります。
- A XML形式 (拡張子付き .coveragexml VS 2010以降、 .xml 以前のバージョン向け)
CppDependはXML形式のみを消費します。Visual StudioのバイナリカバレッジファイルからこのオプションでXMLを手動エクスポート可能:
以下のコードスニペットを参照。わずか3行でバイナリカバレッジファイルをXMLカバレッジファイルに変換。
- そのためにはプロジェクトからアセンブリを参照する必要があります: Microsoft.VisualStudio.Coverage.Analysis.dll:
- このDLLのx86版は次にあります: C:\Program Files (x86)\Microsoft Visual Studio XX.0\Common7\IDE\PrivateAssemblies
- このDLLのx64版はTFSがインストールされたx64サーバーの次の場所にあります: C:\Program Files\Microsoft Team Foundation Server XX.0\Application Tier\TFSJobAgent\Plugins
- 両方 System.Data と System.Data.DataSetExtensions も参照する必要があります。
- コードをVSやTFSのインストールから独立させたい場合は、次もデプロイする必要があります: Microsoft.VisualStudio.Coverage.Interop.dll 使用されている Microsoft.VisualStudio.Coverage.Analysis.dll.
using Microsoft.VisualStudio.Coverage.Analysis;
...
var pathInBinary = @"C:\Dir\File.coverage";
var pathOutXml = @"C:\Dir\File.coveragexml";
var coverageInfo = CoverageInfo.CreateFromFile(pathInBinary);
var data = coverageInfo.BuildDataSet();
data.WriteXml(pathOutXml);
CTC++からXMLカバレッジファイルを取得する方法
使用できます: Ctc2cob Testwell CTC++レポートをCobertura形式のXMLレポートに変換するツール。
解析するカバレッジファイルのリストを提供する方法
VisualCppDependメニューで: プロジェクトプロパティ > 解析 > コードカバレッジ > 設定
カバレッジデータを解析結果にインポートする方法
VisualCppDependメニューで: カバレッジ > コードカバレッジデータのインポート
または
VisualStudioメニューで: CppDepend > カバレッジ > コードカバレッジデータのインポート
