Joe*_*Joe 10 gcc code-coverage gcov lcov
我有相同的源文件(C和Obj-C)被编译成两个目标:单元测试可执行文件和实际产品(然后进行集成测试).这两个目标构建在不同的位置,因此目标文件.gcno和.gcda文件是分开的.并非所有源文件都编译到单元测试中,因此并非所有对象都存在.所有源文件都编译到产品构建中.
有没有办法将两组.gcda文件组合起来,以获得单元测试和集成测试的总覆盖率(因为它们在产品构建中运行)?
我正在使用lcov.
Mac OS X 10.6,GCC 4.0
谢谢!
最后我设法通过lcov解决了我的问题.
基本上我所做的是以下内容:
-fprofile-arcs -ftest-coverage --coverage
lcov --directory src/ --capture --output-file coverage_reports/app.info
genhtml -o coverage_reports/ coverage_reports/app.info
我希望这可以对某人有所帮助.
由于您使用的是lcov,因此您应该能够将gcov .gcda文件转换为lcov文件并将它们与lcov合并--add-tracefile
.
从联机帮助页:添加tracefile的内容.使用-a开关指定多个跟踪文件,通过添加用于匹配测试和文件名组合的执行计数来组合这些文件中包含的coverage数据.
归档时间: |
|
查看次数: |
9979 次 |
最近记录: |