Microsoft 代码覆盖率工具 (vsinstr.exe) 生成要在 Visual Studio 中读取的二进制文件。它还可以生成 XML 文件吗?
3 回答
次要更正:vsinstr.exe 是用于检测二进制文件以进行代码覆盖(或分析)的工具。VSPerfMon.exe 是实际将二进制 .coverage 文件写入磁盘的代码覆盖率监视器。
在 IDE 内部,在“代码覆盖率结果”工具窗口中,您可以单击“导出结果”以 XML 格式导出覆盖率数据:
VS2010 没有用于将 .coverage 文件转储为 XML 的命令行实用程序,但是,您可以使用代码覆盖率 API 自己完成此操作。请参阅此博客文章(以及一般的 Peter 博客)以及CoverageDS.ExportXml
这样做的功能。
覆盖 XML 文件的摘要数据类似于您在 VS UI 中看到的数据。如果您需要更具体的覆盖率细节(例如每个块的覆盖率信息),您可以使用代码覆盖率 API 来获取它。
您还可以使用以下命令从命令行生成 XML:http:
//blogs.msdn.com/b/ms_joc/archive/2005/04/08/406608.aspx
据我所知,没有一个 Visual Studio 版本本身支持命令行上的覆盖导出功能。
在生成报告之前,您可以使用单独的 Visual Studio 项目中的 CoverageInfo 和 CoverageDS 对象将文件转换为 xml 格式。
您可以参考这个答案:https ://stackoverflow.com/a/20919775/2481351基于snip2code 上的这个片段