覆盖率coverage
cpp 覆盖率
options
- compile: -fprofile-arcs, -ftest-coverage
- link: -lgcov
或者:
- compile: --coverage
- link: --coverage
详情参见:https://gcc.gnu.org/onlinedocs/gcc-10.1.0/gcc/Instrumentation-Options.html
编译完后会产生*.gcno, *.gcda 文件
lcov
用lcov 收集数据
## *.gc?? 数据在gcda_dir下, 源代码路径在 src_dir, gcov_info_file 是gcov数据文件
## 用--no-external 排除掉不在前二者目录下的数据
lcov --no-external -c -d {gcda_dir} -b {src_dir} -o {gcov_info_file}
## --extract 提取匹配 src 的文件
lcov --extract {gcov_info_file} "*src*" -o {gcov_info_file}
## --remove 去掉 匹配 unittest, odb 的文件
lcov --remove {gcov_info_file} "*unittest*" "*odb*" -o {gcov_info_file}
## 在output_dir 下生成html 的报告
genhtml -o {output_dir} {gcov_info_file} --demangle-cpp
ref:
- http://ltp.sourceforge.net/coverage/lcov/lcov.1.php
- https://wiki.documentfoundation.org/Development/Lcov#Run_lcov_again_after_tests.2Fchecks_complete
scons
有几个用scons 集成gcov的项目
- https://github.com/ptomulik/scons-tool-gcccov
- https://github.com/sansajn/test/tree/master/scons/soname
- https://sansajn.github.io/post/2021/03/17/coverage-report.html
覆盖率coverage相关推荐
- vcs/urg 进行覆盖率coverage merge及部分merge到整体
目录 1.vcs收coverage基本Option 2.相同代码的merge 3.部分merge到整体 3.1 mapfile 3.2 -map使用语法 3.3合并的常见问题 3.3.1 UCAPI- ...
- Python覆盖率框架Coverage初探
探索背景 前几天,突然有人在我司覆盖率用户群中,提出个问题,有没有Python版的覆盖率接入方法(我司主要是java),负责的同学发给他一个文档.我想着java版的覆盖率原理了解起来有一定难度,pyt ...
- sonar覆盖率、代码覆盖率、分支覆盖率的计算方式
代码质量的覆盖率分为三种,覆盖率.代码覆盖率.分支覆盖率,那每一种的计算方式是怎么样的呢? 举例: 上面最有疑惑的是覆盖率,不知道怎么算出了来的,后面再说. 通过sonarqube可以分析出: 指标 ...
- Systemverilog覆盖率的合并和计算方式
在systemverilog中,对于一个covergroup来说,可能会有多个instance,我们可能需要对这些instance覆盖率进行操作. 只保存covergroup type的覆盖率,不需要 ...
- 强化学习(四) - 蒙特卡洛方法(Monte Carlo Methods)及实例
强化学习(四) - 蒙特卡洛方法(Monte Carlo Methods)及实例 4. 蒙特卡洛方法 4.1 蒙特卡洛预测 例4.1:Blackjack(21点) 4.2 动作价值的蒙特卡洛估计 4. ...
- 深度 | 推荐系统评估
作者 | gongyouliu 来源 | 大数据工程师 作者在上篇文章<推荐系统的工程实现>中提到推荐系统要很好地落地到业务中,需要搭建支撑模块,其中效果评估模块就是其中非常重要的一个.本 ...
- 人人直播带货的时代,推荐模型为什么比不过李佳琦们?
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 大数据文摘投稿作品 作者:袁峻峰 疫情期间,各平台在线直播带货量都大幅上涨,具研究机构 ...
- 软件测试中英文词汇汇总
Acceptance testing : 验收测试 Acceptance Testing:可接受性测试 Accessibility test : 软体适用性测试 actual outcome:实际结果 ...
- 推荐策略产品经理:剖析协同过滤(千人千面推荐的核心 )
本文为PMCAFF专栏作者凤城狂客出品 前文:剖析千人千面的大脑--推荐引擎部分,其中这篇是定位:对推荐引擎中的核心算法:协同过滤进行深挖. 首先,千人千面融合各种场景,如搜索,如feed流,如广告, ...
最新文章
- 启停系统错误_关掉自动启停系统,就可以用普通蓄电池代替启停蓄电池吗?
- 将Java程序打jar包并运行
- Python常见错误及解决方案(持续更新)
- agpl限制了开源_不要限制您的开源项目的潜力
- WinForm与WebForm调试输出
- 用C#调用Windows API向指定窗口发送按键消息(转载)
- vivado 使用DDS IP方法
- 《统计学习方法》——逻辑斯蒂回归
- MapInfo地图查询的简单实现
- BASIC-9	特殊回文数 C语言版
- luogu P5560 [Celeste-B]Golden Feather
- UEFI——PCD研究
- 设置windows补丁自动更新指向固定服务器
- 激光电视的优缺点说明,激光电视与投影有什么区别
- Python之路【第十一篇】: 进程与线程
- 【史上最最最高仿】V2EX论坛源码—React + Golang开源库,求高手拍砖提建议~
- pages.json tabBar[‘list‘][2][‘pagePath‘] “pages/contact/contect“ 需在 pages 数组中
- c语言分桃分题设计思路,C语言实现的猴子分桃问题算法解决方案
- SqlNullValueException: Data is Null. This method or property cannot be called on Null values.
- SpringBoot配置多数据源(MySQL+SQLServer)
热门文章
- 基于主成分分析 沪深300个股一致性IF股指交易策略
- 关于外贸的相关知识和经验(下)
- python有声读书_来香一个,用Python做有声小说!
- 腾讯云发布新一代自研云原生数据库CynosDB
- Rottenwood for mac(电影收藏影评工具)
- python 三维地球代码_如何用两行代码实现三维地球的构建?
- 机器学习实战第2版 00 python虚拟环境在Ubuntu/win(anacondavirtualenv)系统下的配置
- Java RSA、AES加解密,Python RSA、AES加解密
- 在jsp页面如何获取servlet请求中的参数的办法
- 初遇初识初知接下来是什么_高新区科普大讲堂——初识人工智能