我目前正在检查我的代码的覆盖范围,我需要一个 .coverage 文件来查看它。我发现了如何通过此链接检索本机 C++ 的覆盖文件
他们按照以下步骤输出 .coverage 文件:
首先,您的项目必须使用 /PROFILE 链接选项进行编译。如果你调出你的项目属性,它可以在这里找到:配置属性 -> 链接器 -> 高级 -> 配置文件
然后可以在以下目录中找到探查器工具:C:\Program Files\Microsoft Visual Studio 9.0\Team Tools\Performance Tools
您需要将一些检测代码添加到您的 EXE 或 DLL 文件中,这是使用以下命令完成的:vsinstr.exe /COVERAGE
这会将原始文件复制到“.orig”文件并使用原始名称创建一个新文件,其中包含收集覆盖数据所需的检测代码。现在使用以下命令启动侦听器:VSPerfMon.exe /COVERAGE /OUTPUT:
现在运行您的 EXE 或一些使用您要计算覆盖率的文件的测试套件。
一旦您的测试套件完成,在步骤四 (4) 中启动的侦听器将不会自行停止,因此您必须使用此命令(从第二个命令提示符)手动停止:VSPerfCmd.exe /SHUTDOWN
当侦听器停止时,您只需将创建的“.coverage”文件拖放到 Visual Studio 中即可查看结果。
我想知道是否有一种方法可以自动执行此操作,以便每次运行程序时该工具都会将 .coverage 文件输出到同一位置。这将使获得我的代码覆盖率变得更加容易和快捷。任何人都知道如何在 Visual Studio 2012 中使用任何 C++ 程序运行?