Eclipse C++,Cygwin 64,gcov,lcov 单体&覆盖率测试环境搭建笔记
1.下载并安装 Eclipse IDE for C/C++ Developers
https://eclipse.org/downloads/packages/eclipse-ide-cc-developers/lunasr1
2.下载并安装Cygwin
https://www.cygwin.com/
安装选择package的时候记得要选择gcc相关的所有
测试时使用到了boost,因此把boost相关的也装上
Devel下的包尽量都装一下。
3.下载并安装CDT gcov plugin
http://sourceforge.jp/projects/ginkgo/
→http://sourceforge.jp/projects/ginkgo/releases/32486
下载最新版,拷贝至Eclipse 的plugin目录下,重新启动Eclipse
4.部署并安装Google Test
https://code.google.com/p/googletest/
→https://code.google.com/p/googletest/downloads/list
下载最新版,然后参考以下的步骤
在合适的目录下将zip文件解压,在解压下的目录实行以下命令
(Cygwin环境)
> mkdir lib
> g++ -c -Iinclude -I. src/gtest-all.cc
> ar -rv lib/libgtest.a gtest-all.o
将解压目录下的[gtest-1.7.0/include]下的gtest目录拷贝到%CYGWIN64%/usr/include目录下
5.导入/新建工程
需要注意的是新建时的选项
Toolchain for Indexer Settings → Cygwin GCC
6.激活plugin
工程属性
Properties → C/C++ Builder → C Coverage → Activate nature[勾选]
Properties → C/C++ Builder → Setting → ToolSettings → Cygwin C Compiler → Miscellaneous → Other flags[追加-fprofile-arcs -ftest-coverage]
Properties → Setting → ToolSettings → Cygwin C Linker → Miscellaneous → Linker flags[追加-fprofile-arcs -ftest-coverage]
Properties → Setting → ToolSettings → Cygwin C Linker → Libraries → Libraries [gtest] Library[/cygdrive/c/cygwin64/lib]
*如果ToolSettings标签页没有显示,那么需要如下如下设定
Properties → C/C++ Builder → Builder Settings → Generate Makefiles automatically[勾选]
7.执行文件后,生成.gcda .gcno文件
执行
lcov -c -d . -o test.info
生成info文件
执行
genhtml ../test.info
生成报告html
8.LCOV关于生成branch分支
/etc/lcovrc和~/.lcovrc文件以下的配置有效
# Include branch coverage data display (can be disabled by the
# --no-branch-coverage option of genhtml)
genhtml_branch_coverage = 1 # Specify if branch coverage data should be collected and processed.
lcov_branch_coverage = 1
google test测试不错的参考文档
http://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html
参考用到的网站
http://www.nminoru.jp/~nminoru/diary/2013/09.html
Eclipse C++,Cygwin 64,gcov,lcov 单体&覆盖率测试环境搭建笔记的更多相关文章
- Windows, Eclipse下开发Heritrix 3.1 (一)环境搭建
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- Ubuntu14.04(64位)下gcc-linaro-arm-linux-gnueabihf交叉编译环境搭建
1. 下载 gcc-linaro-arm-linux-gnueabihf-4.9.tar.gz 下载地址参考:http://blog.csdn.net/lg1259156776/article/det ...
- Selenium终极自动化测试环境搭建(二):Selenium+Eclipse+Python
前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上,下面再举例Selenium+Eclipse+Python测试环境搭建. 第一步:安装Pyth ...
- Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python
Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...
- 覆盖率测试工具gcov的前端工具_LCOV
http://my.oschina.net/alphajay/blog/33725 1.Gcov是进行代码运行的覆盖率统计的工具,它随着gcc的发布一起发布的,它的使用也很简单,需要在编译和链接的时候 ...
- lcov收集覆盖率
1.gcov 1.1 什么是gcov 首先我们要了解什么是gcov,gcov伴随gcc 发布.gcc编译加入-fprofile-arcs -ftest-coverage 参数生成二进制程序,执行测试用 ...
- GCOV&LCOV&GCOVR入门
索引 一.概述 二.关于gcov的安装 三.代码覆盖率测试(以GCOV为例) 1.编译源代码 2.运行可执行程序 3.通过gcov指令生成代码覆盖率报告 四.生成更全面.直观的代码覆盖率报告 1.LC ...
- 【转】gcov lcov 覆盖c/c++项目入门
原文: http://www.cnblogs.com/turtle-fly/archive/2013/01/09/2851474.html ------------------------------ ...
- 让32位Eclipse和64位Eclipse同时在64的Windows7上运行
转自让32位Eclipse和64位Eclipse同时在64的Windows7上运行 参考这篇文章:http://wenku.baidu.com/view/57994c270066f5335a81214 ...
随机推荐
- java 元数据
什么是元数据? 元数据是指用来描述数据的数据,更通俗一点,就是描述代码间关系,或者代码与其他资源(例如数据库表)之间内在联系的数据.在一些技术框架,如struts.EJB.hibernate就不知不觉 ...
- 第七章 二叉搜索树(b3)BST:删除
- racktables 的介绍及搭建指南
Racktables RackTables称自己为一个“机架空间.IP地址.服务器.交换机.路由器等 的管理框架”.它拥有一个web界面,执行报告和配置,并管理名字服务.RackTables以PHP5 ...
- JAVA 系统变量之System.getenv()和System.getProperty() 用法
Java提供了System类的静态方法getenv()和getProperty()用于返回系统相关的变量与属性,getenv方法返回的变量大多于系统相关,getProperty方法返回的变量大多与ja ...
- [leetcode]199. Binary Tree Right Side View二叉树右侧视角
Given a binary tree, imagine yourself standing on the right side of it, return the values of the nod ...
- VC2008 类型重定义的问题
Q: 比如"a.h"里定义了类a,类a所有函数的实现都放在"a.cpp"里.然后"b.h"和"c.h"都需要用到类a,所 ...
- tomcat 启动报 找不到 StrutsPrepareAndExecuteFilter。。
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://w ...
- java实现word,ppt,excel,jpg转pdf
word,excel,jpeg 转 pdf 首先下载相关jar包:http://download.csdn.net/detail/xu281828044/6922499 import java.io. ...
- 【JDBC&Dbutils】JDBC&JDBC连接池&DBUtils使用方法(重要)
-----------------------JDBC---------- 0. db.properties文件 driver=com.mysql.jdbc.Driver url=jdbc: ...
- 2018.06.30 BZOJ 3932: [CQOI2015]任务查询系统(主席树)
3932: [CQOI2015]任务查询系统 Time Limit: 20 Sec Memory Limit: 512 MB Description 最近实验室正在为其管理的超级计算机编制一套任务管理 ...