12得票4回答
Gcov和switch语句

我正在运行gcov对一些包含switch语句的C代码进行覆盖率测试。我编写了测试用例以覆盖该switch语句中的每条路径,但它仍报告switch语句中的一个分支未被执行并且“至少执行一次”统计数据小于100%。 这里是一些演示样例代码:#include "stdio.h" void foo(...

21得票1回答
gcov警告:总结合并不匹配

有人能告诉我 "Merge mismatch for summaries" 这个 gcov 信息是什么意思吗?我在 gcc 源代码中找到了这个消息。 它似乎是一个检查,用于确保 .gcda 文件中的标记匹配,但我不确定。 有人知道如何解决这个问题吗?

10得票3回答
有没有一种方法可以将两个.gcda文件合并成一个?

我有一个应用程序的几个单元测试,每个测试都能够生成.gcda文件。我希望能够生成统一的.gcda文件来表示我的测试套件的覆盖范围。似乎没有简单的方法可以做到这一点,但我可能是错的,所以我想问一下。 在gcov中,是否可以合并两个.gcda文件?之前已经有人问过了,解决方案是将其转换为lcov...

28得票1回答
GCOV:使用GCC构建时,“--coverage”和“--ftest-coverage”有什么区别?

尝试启用代码覆盖率并运行,我首先只是阅读文档。我发现有几篇文章提到使用--coverage标志进行构建,而其他人则提到--ftest-coverage。 两种描述似乎都表示它们做相同的事情,但我不确定。 这里有两篇文章: http://bobah.net/d4d/tools/cod...

9得票2回答
Xcode 7生成GCOV

Xcode 7的热门新功能是代码覆盖率集成在XCode中 - 太棒了!随着这个新功能,苹果还推出了新的代码覆盖格式.profdata。 我们需要在Cobertura报告(在Jenkins中加载)中显示代码覆盖率报告。目前没有办法将.profdata转换为Cobertura XML报告(但正在...

29得票1回答
在SonarQube中,“Lines to Cover”和“Uncovered Lines”指标的含义有何区别?

我正在查看SonarQube分析的C++项目中“度量”选项卡下的覆盖率报告。在该页面上,我的摘要信息如下: “待覆盖行”和“未覆盖行”指标有何区别? 我查看了SonarQube网站的指标定义页面,但那里的两个条目都没有帮助我。 待覆盖行 - 代码中可以由单元测试覆盖的行数(例如,空行...

8得票3回答
GCC的代码覆盖率选项是如何工作的?

考虑以下命令: gcc -fprofile-arcs -ftest-coverage main.c 它生成文件main.gcda,供gcov使用以生成覆盖率分析报告。 那么如何生成main.gcda?如何进行插桩?我能看到插桩后的代码吗?

10得票2回答
产生空的.gcda文件

我使用gcov进行代码覆盖率分析,使用lcov生成覆盖率的图形输出。对于已经执行了部分目标文件的代码文件,这个方法效果很好。但我想要追踪完全未被执行的文件。我怀疑这与这些文件没有生成.gcda文件有关。是否有一种方法可以强制生成所有目标文件的.gcda文件,而不考虑是否执行?

35得票4回答
为头文件库获取有用的GCov结果

针对我的头文件库(包含许多模板等),我使用GCov检查测试覆盖率。然而,由于未使用的函数在编译时根本不会被生成,因此它报告所有头文件的覆盖率为100%。手动寻找未覆盖的函数很容易,但这违背了持续集成的初衷... 有什么自动解决的方法吗?我应该只将“行命中数/代码行数”作为我的覆盖度量标准,并...

22得票3回答
Swift已经支持代码覆盖率了吗?

我正在尝试在Xcode 6 Beta 4上为Swift应用程序设置测试代码覆盖率。 过去我能够在Xcode 5中使用ObjectiveC做到这一点,但我认为我必须调用void __gcov_flush()方法来触发生成.gcda/.gcno文件。 我将仪器和代码覆盖率的两个属性都设置为YES,...