lcov:几次执行的来源报道

时间:2011-10-28 07:42:04

标签: c gcov lcov

  1. 我创建了简单的hello word cpp app。
  2. 通过传递gcc --coverage flag
  3. 编译它
  4. 执行可执行文件
  5. 通过调用生成的覆盖范围 lcov --directory . --capture --output-file ic.info
  6. genhtml生成的基于html的报告
    genhtml -o html/ ic.info
  7. 现在的问题。无论我运行可执行文件多少次,我都会得到相同的结果,即线条和函数的覆盖范围相同。它是否应该增加每次执行的线路覆盖范围?我弄错了吗?

    如果lcov仅为一次执行生成覆盖范围,那么我如何为我所做的所有执行生成覆盖范围?

1 个答案:

答案 0 :(得分:1)

我猜你误解了覆盖率结果的生成方式。如您的问题所述,lcov未产生保险范围。它只处理运行程序时生成的覆盖结果(问题中的第3步)。

因此,当多次执行程序时(步骤3),您的行执行时间将增加(不需要覆盖)。要查看此信息,您可以生成多个覆盖率报告(多次执行步骤3,4和5)。在步骤5中生成的报告中,您将看到代码中行的执行时间增加。