Linux下的单元测试的覆盖率

一般来说,我们都用基于GNU的覆盖度评估工具gcov来产生,在GCC的的编译选项上加上选项

-fprofile-arcs -ftest-coverage
或(GCC4.0版本以上)
-fstack-protector -fstack-protector-all -fprofile-arcs -ftest-coverage

即可。 gcov最终产生.gcov文件(由gcov note文件和gcov data文件生成),.gcov文件记录着每行代码被执行的次数,如何更清晰的知道单元测试覆盖率的情况呢? 使用lcov工具可以更加清晰的知道单元测试覆盖的情况:

lcov --directory . --capture --output-file results.info
genhtml -o results results.info

经过上面二句shell语句,就会将不容易看懂的.gcov文件转化成html网页,然后只需要进入results目录去看覆盖率百分比、图表,这样就能快速浏览覆盖率数据了。

Monthly Archives

Pages

Powered by Movable Type 7.7.2

About this Entry

This page contains a single entry by Cnangel published on September 5, 2012 3:31 PM.

TWiki5.1.1的一个内存耗尽漏洞及修复 was the previous entry in this blog.

远程使用x-server is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.