7得票1回答
常量表达式构造函数不会显示覆盖率数据

今天我正在将我的矩阵类重写为constexpr。我已经对这个类进行了100%的单元测试覆盖,但是我注意到在将几乎所有函数转换为constexpr后,在构造函数的一部分被标记为完全未被覆盖。 以下是仅包含构造函数的类。 template<typename T, std::size_t ...

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

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

17得票4回答
使用单独的构建目录在CMake中使用gcov

我在使用gcov时遇到了问题。编译和链接过程中没有出现错误,但是当我运行可执行文件时,没有生成任何覆盖率数据。 我正在使用CMake和一个单独的构建目录,在这个目录下通过以下方式向编译器和链接器传递标志:add_definitions(--coverage) set(CMAKE_EXE_LI...

10得票5回答
有没有针对Windows的活跃支持的Lcov端口?

我使用gcov库来测量我的代码覆盖率,并希望生成用户友好的覆盖率报告。我发现了lcov工具,但它与Windows环境不兼容(主要是因为路径解析方式的不同)。是否有人知道关于Windows的lcov移植版本? 似乎在Windows上让它工作相当容易(我认为甚至可以通过几个创意批处理/Perl脚...

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

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

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

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

8得票3回答
在C++代码中查找未实例化的模板

什么是在C++代码中查找未实例化模板的最佳方法? 我有一个使用模板的代码库。 当然,我们希望确保测试覆盖率很高。 对于所有使用的代码,使用gcov非常有效。 但是,未使用的模板被报告为不可执行的。 经过一些搜索,似乎没有办法强制g ++为这些模板发出代码(这是合理的,编译器如何猜测任何类...

8得票3回答
C++ 使用 gcov 和 lcov 遇到问题?

我正在使用Ubuntu 10.1操作系统和g++编译器。 我正在尝试为我的C++项目使用gcov和lcov。我已经成功编译了gcov: g++ -fprofile-arcs -ftest-coverage main.cpp user.cpp game.cpp 没有错误或警告信息。接下来...

67得票8回答
Gcov符号在哪里?

我正在尝试使用gcov编译一个简单的应用程序,但是出现了以下链接错误:gcc AllTests.o CuTestTest.o CuTest.o -o TestTest AllTests.o: In function `global constructors keyed to 0_RunAllT...

13得票2回答
寻找一种方法来排除geninfo/genhtml使用的文件。

我们正在尝试使用geninfo和genhtml(gcovr的替代品,请参见这里)使用gcov提供的覆盖率生成html页面。 geninfo会从gcov的*.gcda文件创建lcov-tracefiles genhtml从上述tracefiles生成html文件 然而,最终结果不仅包括我...