C++开源代码覆盖率工具OpenCppCoverage介绍(Windows)

http://www.cnblogs.com/coderzh/p/OpenCppCoverage.html

关于代码覆盖率统计工具,Linux平台下,gcc内置支持gcov,通过编译时加参数选项,进行代码插桩,从而实现代码覆盖率。在Windows平台下,早在几年前,我还没找到特别好用又开源的覆盖率工具,所以以前公司是自己实现了一套,使用起来也不是很方便。

最近又遇到同样的问题,不过非常幸运的是,一款开源的Windows平台的C++代码覆盖率工具出现了在我的面前:OpenCppCoverage。

OpenCppCoverage是Windows平台下开源的C++代码覆盖率工具,使用简单,功能齐全而强大。2014年才推出的,只恨没有早点发现。

使用起来非常简单,它不需要在编译时插桩,只需要有pdb文件,运行时插桩,通过OpenCppCoverage启动进程即可。

官网:https://opencppcoverage.codeplex.com/

功能也比较全,主要特点有:

  1. 不需要重新编译被测程序,只需要使用OpenCppCoverage运行程序。
  2. 性能开销比较小。
  3. 按模块、代码路径过滤。
  4. 自动生成html覆盖率结果报告。
  5. 支持多个覆盖率结果合并。
  6. 集成Jenkins

使用起来不要太简单,执行:

OpenCppCoverage.exe --sources MySourcePath -- YourProgram.exe arg1 arg2

使用文档:https://opencppcoverage.codeplex.com/documentation

Jenkins集成:https://opencppcoverage.codeplex.com/wikipage?title=Jenkins

覆盖率详细结果

Jenkins集成

时间: 2024-10-20 01:40:03

C++开源代码覆盖率工具OpenCppCoverage介绍(Windows)的相关文章

Windows系统内存分析工具的介绍

? Windows系统内存分析工具的介绍(进程管理器,资源管理器,性能监视器, VMMap, RamMap,PoolMon) 微软官方提供多种工具来分析Windows 的内存使用情况,除了系统自带的任务管理器(Task Manager), 资源监视器(Resource Manager), 性能监视器(Performance Monitor), 还有SysInternals工具, ?RamMap, PoolMon用以分析内存问题.本文简单介绍上述工具的快速使用方法,如果需要了解深入了解,请参考微软

7款优秀的开源数据挖掘工具

7款优秀的开源数据挖掘工具 IDMer说道:本文只对几种流行的开源数据挖掘平台进行了检视,比如Weka和R等.如果您想找寻更多的开源数据挖掘软件,可以到KDnuggets和Open Directory上查看.为了评测这些软件,我们用了UCI Machine Learning Repository上的心脏病诊断数据集. Tanagra Tanagra (http://eric.univ-lyon2.fr/wricco/tanagra/) 是使用图形界面的数据挖掘软件,采用了类似Windows资源管

资源:开源Fuzzers工具列表 (以及其它fuzzing工具)

开源fuzzers? / 开源fuzzing工具的最新列表(Fuzzers,没有标准中文翻译,可以理解为模糊测试工具或者模糊器) 如果你知道有需要添加的部分,那么请在这里或在推特上@Peerlyst来联系我 资源:开源 Fuzzers结构的Peerpower列表: 1.开源Fuzzers工具 2.Fuzzing的线束或框架 3.其它 Fuzzers 工具是免费的,但是和开源比不值得一提 4.Fuzzing的有效超载 5.博客将帮助你更好的了解Fuzz 6.其它关于Fuzzing博客或资源 7.商

2015年排名前5的开源项目管理工具

2015年排名前5的开源项目管理工具 基于以下几个标准:软件是否提供开源许可证.是否有一个活跃的社区.是否有可用的最新文档.源代码是否可用.是否有新的或最近的东西发布,来进行筛选2015年靠前的开源项目管理工具. 首先,我分享了2015年的5个新开源项目管理工具.总体来说,这篇文章将会让你好好看下11个顶级的开源项目管理工具. 基于以下几个标准: 软件是否提供开源许可证? 是否有一个活跃的社区? 是否有可用的最新文档? 源代码是否可用? 是否有新的或最近的东西发布? 2015年五款新工具 1.

【转载】JMeter学习(一)工具简单介绍

JMeter学习(一)工具简单介绍 一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等.JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能.     同时,JMeter可以帮助你对你的应用程序进行回归测试.

十二个开源UML工具推荐

开源UML工具这些年发展的不错,以前那个连付费的商业UML工具也很少见的时代早已经过去.本文介绍了12个开源UML工具,功能各有一些不同,希望对读者有些帮助. AD: UML面向对象建模知识简介 UML对象关系学习总结 五个免费UML建模工具推荐 使用UML类图进行Java应用程序设计 UML基础: 统一建模语言简介 [51CTO快译]51CTO之前曾介绍过几个免费UML建模工具.本文再介绍几个免费的开源UML工具. 1. StarUML StarUML是一个开源UML项目,可以开发快速,灵活,

JAVA代码覆盖率工具JaCoCo-原理篇

1.2 JAVA覆盖率工具介绍 1.3.3 Apache Maven方式 1.3.4 Eclipse EclDmma Plugin方式 JAVA代码覆盖率工具JaCoCo-实践篇 一.覆盖率项目中使用介绍 1.5执行测试,收集覆盖率结果文件 1.5.1AndroidManifest文件的修改 1.5.2生成覆盖率的apk工具和jacoco-cov-sdk.jar包 二.覆盖率与BVT测试结合 2.1在BVT用例框架中插入覆盖率方法 2.2执行BVT用例,得到覆盖率 2.3批量生成覆盖率报告,解析

免费下载:微软电子书《介绍Windows Server 2016》

微软最新服务器操作系统Windows Server 2016正式版镜像已经泄露,那么这款系统究竟有什么特点?相比于之前的Server 2012或Server 2008等版本,2016版有什么优势?现在微软Windows Server团队撰写了名为<介绍Windows Server 2016>的使用指南,以免费电子书的形式发布,帮助用户更好地了解新系统的使用方法. 全书正文共有五章,IT之家把各章内容简要整理如下: 第一章 -- 介绍微软Windows Server 2016 涵盖云(安全.Li

开源JDBC工具类DbUtils

本篇将会详细地介绍Apache公司的JDBC帮助工具类DbUtils以及如何使用.在上一篇中我们已经通过将以前对dao层使用JDBC操作数据库的冗余代码进行了简易封装形成自己的简单工具类JdbcUtils,而在这过程中很多都是借鉴和参考了DbUtils的代码,因此通过上一篇的学习,会让我们在对DbUtils进行更快速简单的认识. 俗话说学习一个开源的工具最好的方法就是看其官方文档,是的,在Apache官网中对DbUtils进行了详细的介绍:http://commons.apache.org/pr