【发布时间】:2021-03-28 06:00:45
【问题描述】:
我需要一些帮助来理解和正确解释 gcov 结果。
执行的行数:24 行的 25% 已执行的分支机构:20 个中的 30% 至少服用一次:20 次的 15% 执行的调用:2 的 50%
执行的行数为我提供了语句覆盖率。 执行的分支给了我决策覆盖率和条件覆盖率
如果我说 100% 分支覆盖意味着 100% 决策覆盖和条件覆盖,我说得对吗?
因为我的理解是 if 语句 if(a2){...}else{...} 没有两个分支,而是 4,因为我有两个条件。这意味着如果我要遍历所有 4 个分支,我应该有条件覆盖,或者分支覆盖没有提供有关条件覆盖的信息
感谢您的帮助。
干杯
【问题讨论】:
-
我认为 gcov 的分支是一个弧,并且可以通过 for、if、while、switch/case、&&、||、? : .这就是我从这里理解的:gcovr.com/en/stable/faq.html 因此,我在帖子中展示的示例应该有 4 个弧。因此,“分支”也应该涵盖条件覆盖范围。
标签: matlab mingw code-coverage gcov