OpenCppCoverage是在Windows检查单元测试行覆盖率的一个工具。官网在OpenCppCoverage (github.com)

首先需要安装对应的可执行文件,点击链接Releases · OpenCppCoverage/OpenCppCoverage (github.com)

找到对应的版本下载接口

安装方式有两种,源码安装和二进制安装,这里选择二进制安装

一路下一步即可

安装完之后,打开Windows的命令行工具,这里用powershell,输入OpenCpp,命令行会自动补全命令

证明安装OK

进入单元测试的工作目录,我这里工作目录如下

进入工作目录,输入下面的命令

OpenCppCoverage.exe --source C:\KanziWorkspace_3_6_10_170\Projects\Loadimg\Application\src\plugin\src\ -- ..\output\Win32\GL_vs2015_Debug\Loadimg_executable.exe

其中OpenCppCoverage.exe表示运行程序

--source C:\KanziWorkspace_3_6_10_170\Projects\Loadimg\Application\src\plugin\src\ 表示要测试的源代码(不是单元测试代码)所在的路径(这个路径必须填写绝对路径

-- ..\output\Win32\GL_vs2015_Debug\Loadimg_executable.exe表示单元测试的可执行文件(这个路径可以填写相对路径)

执行上述命令后,就会开始运行单元测试的代码,最终会输出一个单元测试的报告所在的路径,默认是HTML

打开报告就可以查看行覆盖率了

如何使用OpenCppCoverage检查单元测试的行覆盖率相关推荐

  1. 单元测试框架和覆盖率统计原理简析

    一 背景介绍 最近部门在推进质量标准化,通过标准化研发.交付.部署.运维等过程,减少缺陷率和返工率,提高整体的工作效率.而单元测试又是软件研发过程中的重要一环,此文可以帮助理解单元测试插件的运行过程, ...

  2. uniq命令注意事项,检查重复行的时候,只会检查相邻的行。

    今天在使用uniq命令统计数量时,uniq -c总是得不到想要的效果,相同的行没有合并,例如 后来在http://ju.outofmemory.cn/entry/78365才看到,原来uniq检查重复 ...

  3. .Net core基于xUnit的单元测试查看测试覆盖率

    写代码如何保证代码质量,基本大家都知道要做单元测试,那如何知道你单元测试是不是测试到了所有代码场景呢,这就要通过测试覆盖率来体现了. 测试覆盖率,一般来说主要是Line代码行数覆盖率,同样还会有Bra ...

  4. php 单元测试 静态类,可选的PHP类型提示/检查单元测试或静态分析?

    PHP类型提示不支持标量变量[1],如int或string 但是,我们发现在连续集成期间注释函数中的类型(int或string)以发现错误仍然非常有用,例如: 目前我用的方法就像 function f ...

  5. CppCheck静态代码检查配置(命令行方式或在VS中使用)

    目录 CppCheck静态代码检查 1.1 安装cppcheck 1.2 直接使用Cppcheck 1.2.1 命令行方式 1.2.2 UI方式 1.3 在VS2017中使用 1.3.1 在VS201 ...

  6. 阿里是如何进行单元测试培训的?

    一.什么是单元测试?(10 min) 维基百科中是这样描述的:在计算机编程中,单元测试又称为模块测试,是针对程序模块来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元 ...

  7. 软件测试随手记(转)

    最近在准备网易测试工程师的实习笔试,边学边记了一些常考的知识点,放在这里以便复习之用. V模型 瀑布模型 驱动函数(一般为Main函数) 桩函数 黑盒测试: 等价类划分(逐个覆盖). 边界值分析(有序 ...

  8. Jenkins部署Python项目实战

    一.背景 我们工作中常用Jenkins部署Java代码,因其灵活的插件特性,例如jdk,maven,ant等使得java项目编译后上线部署一气呵成,同样对于脚本语言类型如Python上线部署,利用Je ...

  9. 软件测试面试常见问题总结

    1.软件测试级别? 单元测试:单元测试是对软件组成单元进行测试.其目的是检验软件基本组成单位的正确性.测试的对象是软件设计的最小单位:模块.Findyou又称为模块测试,一个单元测试是用于判断某个特定 ...

最新文章

  1. How to never give up
  2. Outlook通过RPC或RPC over HTTPS访问Exchane邮箱:Exchange2003系列之四
  3. python 对象销毁_python对象销毁实例(垃圾回收)
  4. 【数据仓库】Hive环境搭建和基础用法
  5. OpenCV运行ReID网络的实例(附完整代码)
  6. java 打不开空客手册_空客A320AMM维护手册使用介绍.ppt
  7. idea会不定时闪屏_显示器闪屏什么原因
  8. oracle数据库集群日志,Oracle集群数据库中恢复归档日志
  9. java map扩容机制_java中ConcurrentHashMap的扩容机制是怎样的?详细解析
  10. ML、DL、CNN学习记录6
  11. 神经网络技巧篇之寻找最优参数的方法
  12. DOS批处理不支持将UNC 路径作为当前目录的巧妙解决方案
  13. 人机大战简史(第二版)
  14. 单位个人计算机 数据备份,个人所得税软件数据备份,您必须知道的5件事
  15. Nlp预处理方法(BPE Byte pair encoding、Normalization、Lemmatisation、Stemming…)
  16. October CMS
  17. 程序员代码规范——马化腾、刘强东写的代码,你见过吗
  18. 目标决定人生——没有目标就失去一切!
  19. 浅谈支付宝第三方支付
  20. python 电子签名去背景

热门文章

  1. 人脸识别 python调用face++ 功能测试
  2. 批量导入数据到hive表中:假设我有60张主子表如何批量创建导入数据
  3. 好插件让你事半功倍!【资源篇】
  4. mysql复习增删改查
  5. How do I filtered TextBox with a Decimal (double) Data Type
  6. 博客园网站程序的一个小问题
  7. Keras——模型的保存、读取及加载
  8. 突然想写一篇有关欧拉函数的博客
  9. ASP.NET Core 上传多文件 超简单教程
  10. P1631 序列合并