hansewu / MovieMator

MovieMator
14 stars 10 forks source link

调研覆盖率检测工具 #379

Closed pisceshsu closed 5 years ago

pisceshsu commented 5 years ago

要求:

1.支持C/C++检测;

  1. 可以检测到dylib或lib文件中的代码
  2. 最好能集成到Qt Creator
pisceshsu commented 5 years ago

Github开源工具:

1.OpenCppCoverage 276star

https://github.com/OpenCppCoverage/OpenCppCoverage

Features: • Visual Studio support: Support compiler with program database file (.pdb). • Non intrusive: Just run your program with OpenCppCoverage, no need to recompile your application. • HTML reporting • Line coverage. • Run as Visual Studio Plugin: See here for more information. • Jenkins support: See here for more information. • Support optimized build. • Exclude a line based on a regular expression. • Child processes coverage. • Coverage aggregation: Run several code co

Requirements • Windows Vista or higher. • Microsoft Visual Studio 2008 or higher all editions including Express edition. It should also work with previous version of Visual Studio.

FAQ: https://github.com/OpenCppCoverage/OpenCppCoverage/wiki/FAQ

2.Oovaide 137star

https://github.com/animatedb/oovaide C++ and Java automated analysis, class, component and sequence UML diagramming IDE tool, test coverage, complexity, duplicate code, analysis statistics

官网: http://oovaide.sourceforge.net/

支持系统: Windows, Linux

hpuzj commented 5 years ago

COVTOOL

COVTOOL is an open source test coverage analyzer for C++ programs. It lets you dynamically instrument your source code as you compile. An instrumented program keeps track of the lines of code that were executed during its run and produces a log of the same upon program termination. Multiple program runs will produce multiple logs.

网址:http://covtool.sourceforge.net/ 支持系统:Linux(需进一步验证是否可以在Mac上使用)

gcov

(之前有在qt试用过,但是因为没找到gcov文件改用了llvm-cov,这次可以试用一下gcov,今天编译了一下mlt,mlt里面的cpp也可以生成gcno和gcda文件,如果可以解决gcov的问题,应该是个很不错的工具)

主要用于检测:

工作原理及实践总结:https://blog.csdn.net/yanxiangyfg/article/details/80989680 支持系统:Windows、Mac

xCover

xCover is a C/C++ library that uses low-impact syntactic signalling to detect code coverage in a code base at runtime github 下载地址: https://github.com/synesissoftware/xCover 支持系统:UNIX 、 Windows

其他

Testwell CTC++、CoverageMeter、BullseyeCoverage等,但都是商业软件 https://blog.csdn.net/zww0815/article/details/51275302