gpt4 book ai didi

c++ - 如何告诉 gcov 忽略不可命中的 C++ 代码行?

转载 作者:IT老高 更新时间:2023-10-28 14:00:56 27 4
gpt4 key购买 nike

我正在使用 gcov 来衡量我的 C++ 代码中的覆盖率。我想达到 100% 的覆盖率,但受到以下事实的阻碍:有些代码行在理论上是不可命中的(需要实现但从未调用的方法, 的默认分支switch 语句等)。这些分支中的每一个都包含一个 assert( false ); 语句,但 gcov 仍将它们标记为未命中。

我希望能够告诉 gcov 忽略这些分支。有没有办法给 gcov 提供这些信息——通过注释源代码,或通过任何其他机制?

最佳答案

请使用lcov。它隐藏了 gcov 的复杂性,产生良好的输出,允许每个测试的详细输出,具有简单的文件过滤和 - ta-taa - 已审查行的行标记:

来自 geninfo(1):

The following markers are recognized by geninfo:

  • LCOV_EXCL_LINE
    • Lines containing this marker will be excluded.
  • LCOV_EXCL_START
    • Marks the beginning of an excluded section. The current line is part of this section.
  • LCOV_EXCL_STOP
    • Marks the end of an excluded section. The current line not part of this section.

关于c++ - 如何告诉 gcov 忽略不可命中的 C++ 代码行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3555083/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com