首先安装lcov,我安装的版本是lcov-1.9写一个app.c文件,代码如下:#include <stdio.h> #include <time.h> #include <stdlib.h> void main() {  int a=3; int b=4; int c=5; if(a>b&&a&gt
原创 2015-07-01 10:16:24
3050阅读
Linux操作系统中,开发人员经常会使用一些工具来评估代码质量和覆盖率。其中比较常用的工具就是gcov和lcov。gcov是GNU项目下的代码覆盖率工具,而lcov则是一个用于生成代码覆盖率报告的工具。 gcov工具可以帮助开发人员分析代码覆盖率,找出程序中未执行的代码部分,并生成详细的报告。通过gcov,开发人员可以了解代码中哪些部分被覆盖,哪些部分未被覆盖,从而有针对性地进行代码优化。在使
原创 2024-04-18 10:58:23
35阅读
如何在Linux平台安装Lcov? # wget http://downloads.sourceforge.net/ltp/lcov-1.9.tar.gz # tar -zxvf lcov-1.9.tar.gz # cd lcov-1.9 # ls bin      contrib  descriptio
原创 2012-11-12 17:07:19
1300阅读
1.安装到usr/local下git clone https://github.com/linux-test-project/lcov.gitcd lcovsudo make install直接在主目录make。2. 简易使用2.1 在待测试覆盖率的项目CmakeLists.txt链接lcov:添加set(CMAKE_CXX_FLAGS "-g -O0 -Wall -fprofile-arcs -ftest-coverage") 或 set(CMAKE
原创 2021-09-13 17:34:51
2786阅读
LCT全称是link-cut-tree,从这个名字就可以看出这玩意儿的逼格很高。实际上确是是一个很强的数据结构。 建议在学LCT之前可以先学习一下树链剖分,这里就不赘述了。那么LCT是一个什么东西呢?这个数据结构正如它的名字一样,他可以支持树的link和cut,专治各种毒瘤题其实LCT可以看做树链剖分的升级版,树链剖分只能解决静态树的根源是什么?是因为线段树这个东西就只能是静态的。而且就算把线段树
创建自定义的测试配置 1.每个C++test 测试,不管是在GUI 中执行,还是从命令行界面执行,都基于一个Test Configuration,该测试配置定义测试场景,为静态分析、测试生成和测试执行设置所有相关测试参数。要更改如何执行测试,应为想要使用的Test Configuration 修改设置。2.位于“内建”类别的缺省Test Configuration 不能修改。用来创建自定
转载 2024-09-24 07:03:22
37阅读
gcov与 lcov简介  通过gcov和lcov,可以很直观的看到代码的运行情况,同时也可以查看  代码的行覆盖率,函数覆盖率等等信息,为开发提供一个方便的测试手段。  gcov  gcov是Linux下GCC自带的一个C/C++代码覆盖率分析工具,因此只要安装了gcc,就不需要再次安装了  lcov  lcov介绍  gcov能够生成代码覆盖信息,但是不够直观(见文...
原创 2021-09-29 13:54:33
3846阅读
覆盖率显示规则:一行从左到右分别万代表:1.代码行号(空白代表分支显示不过来产生换行)2.分支覆盖情况 3.该行调用次数 4.该行源代码以及行覆盖情况其中,分支覆盖情况详细介绍如下:中括号代表生成的一对子分支,+代表该子分支被覆盖,-代表该子分支未覆盖,但对应的另一分支被覆盖,#代表两个子分支均未被覆盖。以if(condition)为例,
原创 2021-10-08 17:44:31
8072阅读
前言 gcov与 lcov简介 安装 gcov 安装 lcov 安装 实例 在makefile中 使用 附录: 前言 GNU工具链 (GNU Toolchain) 是一组用于开发应用程序和操作系统的编程工具的集合,这些工具构成了一个完整的系统。G...
转载 2019-04-30 18:13:00
278阅读
2评论
索引 一、概述 二、关于gcov的安装 三、代码覆盖率测试(以GCOV为例) 1、编译源代码 2、运行可执行程序 3、通过gcov指令生成代码覆盖率报告 四、生成更全面、直观的代码覆盖率报告 1、LCOV 2、GCOVR 五、参考 索引 一、概述 二、关于gcov的安装 三、代码覆盖率测试(以GCO
转载 2019-03-31 19:10:00
958阅读
2评论
gcov是什么?Gcov is GCC Coverage,是一个测试代码覆盖率的工具,是一个命令行方式的控制台程序,伴随GCC发布,配合GCC共同实现对C/C++文件的语句覆盖和分支覆盖测试;与程序概要分析工具(profiling tool,例如gprof)一起工作,可以估计程序中哪一段代码最耗时;注:程序概要分析工具是分析代码性能的工具。gcov能做什么?gcov可以统计每一行代码的执行频率,实
定义• 地图着色是指分配地图的每一个面一种颜色,使得相邻的面(指 有公共边界边)具有不同的颜色。• 图形着色定义Ø 考虑一个图形中的N个节点 Ø 把变量V1,…,VN的值赋给N个节点 Ø 变量取值范围{R, G, B} Ø 约束:如果节点i和j之间有边,则Vi不同于V• 约束满足问题 (Constraint Satisfaction Problems, CSP)Ø CSP={V, D, C} Ø
转载 2024-08-06 19:51:43
97阅读
lcov是建立在gcov之上的一个可以生成html代码覆盖率报告的工具,最近公司开始尝试引入代码覆盖来提高产品质量,lcov很好地满足了我们的需求,虽然lcov本身支持生成代码覆盖率的diff报告,但是跟我们的需求不太符合。
转载 2012-01-18 10:24:00
535阅读
2评论
代码覆盖率检查是只在一次程序运行过程中,哪些代码和函数被运行到了,哪
原创 2022-09-23 13:55:47
365阅读
行覆盖率1.std::string/std::vector默认初始化导致行覆盖不上,请使用有参数初始化。即std::string camera_model_name;//不能行覆盖 std::vector<double_t> r_s2b_vec;//不能行覆盖std::string camera_model_name{""};//行覆盖,但产生两个分支,仅覆盖1个 std::vector<double_t> r_s2b_vec{0LU};//行覆盖,但产生两
原创 2021-10-16 18:10:13
4988阅读
本文首发于 2016-03-30 15:34:34 引言 通常我们评判一个 test case 好坏的标准之一是代码的覆盖率,一个好的 test case 应该覆盖到所有的代码。 那么问题来了,我们怎么知道这个 test case 有没有覆盖到所有的代码呢? 以 PostgreSQL 为例,我们看看 ...
转载 2021-09-21 18:26:00
618阅读
2评论
文章目录前言演示项目项目结构测试环境关于CMake关于测试关于xUnitGoogle Test介绍编译Google Test使用Google Test演示项目代码说明开始测试测试判断布尔判断二进制判断字符串判断浮点数判断异常判断EXPECT_DEATH、EXPECT_EXIT、EXPECT_THROWTest Fixture运行测试代码覆盖率覆盖率的类型先来看一下,当我们在说“覆盖率”的时候我们
转载 7月前
864阅读
这也是慕雪撰写本文的原因。希望这篇文章能对需要使用lcov工具却又苦于没有引导教程的老哥提供一丝丝帮助。
原创 2024-08-31 13:28:06
1607阅读
1点赞
在介绍lcov的用法之前,先简单解释一下它的作用。lcov是一个用于收集代码覆盖率信息的工具,它基于gcov,并能够生成HTML格式的覆盖率报告。lcov非常适合用于C/C++项目中的代码覆盖率分析。1. 安装lcov通常,你可以使用包管理器来安装lcov,例如在Ubuntu上:sudo apt-get install lcov或者在macOS上使用Homebrew安装:brew install
原创 精选 2024-09-04 10:33:47
2148阅读
1点赞
gtest + gmock + mockcpp做C代码LLT 由于工作原因,之前在CI这一块一直是依照公司流程走的,LLT这一块都是照猫画虎,对于整体框架自己没有一个完整的概念,最近有时间,研究了一下整体的逻辑框架,在此记录一下。关于gtest,gmock和mockcpp,这里不再细讲,知道gtest,gmock是google的一套用于C/C++ LLT
转载 2024-05-01 23:05:14
427阅读
  • 1
  • 2
  • 3
  • 4
  • 5