Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2012 Visual Studio 2012的谷歌测试覆盖率_Visual Studio 2012_Googletest - Fatal编程技术网

Visual studio 2012 Visual Studio 2012的谷歌测试覆盖率

Visual studio 2012 Visual Studio 2012的谷歌测试覆盖率,visual-studio-2012,googletest,Visual Studio 2012,Googletest,我有一个Visual Studio 2012解决方案,该解决方案构建到一个静态库(.lib)(scons build部分可用)中,并使用Google测试框架(使用自己的main()函数编译成.exe)对此代码进行测试 如何使用Visual Studio 2012内置工具或任何与VS2012无关的免费软件从命令行获取此解决方案的测试覆盖率分析?最后,我成功地做到了这一点 首先,您需要插入用于运行Google测试的*.exe文件(使用/排除以避免生成不需要的名称空间的覆盖率。正如我的调查所示,“*”

我有一个Visual Studio 2012解决方案,该解决方案构建到一个静态库(.lib)(scons build部分可用)中,并使用Google测试框架(使用自己的main()函数编译成.exe)对此代码进行测试


如何使用Visual Studio 2012内置工具或任何与VS2012无关的免费软件从命令行获取此解决方案的测试覆盖率分析?

最后,我成功地做到了这一点

首先,您需要插入用于运行Google测试的*.exe文件(使用/排除以避免生成不需要的名称空间的覆盖率。正如我的调查所示,“*”通配符仅在语句末尾起作用):

注意:您需要使用vsinstr来实现适当的体系结构。如果不确定默认的vsinstr类型,请使用完整路径

然后您需要启动测试执行监控(也检查架构):

之后,像往常一样运行*.exe文件

在执行结束时,使用以下方法完成覆盖范围的收集:

VSPerfcmd.exe" -SHUTDOWN

现在,您可以在tests.coverage文件中获得覆盖率结果。

微软让这一过程变得如此困难,这绝对令人惊讶。
VSPerfcmd.exe" /START:COVERAGE /OUTPUT:tests.coverage /cs /user:Everyone
VSPerfcmd.exe" -SHUTDOWN