8得票1回答
CMake和lcov:找不到gcno文件

我试图在基于CMake的项目上获取代码覆盖率(该项目由多个目标组成)。 首先,我使用以下命令生成gcno文件: lcov -b . -d . -o coverage.output --capture --initial *.gcno文件是在代码编译时生成的。 build_dir/[t...

8得票2回答
如何在CMake中使用gcov

我在跟随这篇指南(在另一篇帖子中推荐过)时遇到了困难,涉及IT技术。以下是需要翻译的内容:https://github.com/bilke/cmake-modules/blob/master/CodeCoverage.cmake 首先,请将此文件复制到您的cmake模块路径中。如何确定我的c...

8得票1回答
如何强制gcov提取数据,即使程序被中止

我正在使用一个叫做KLEE的测试生成工具,它为我的C99代码创建了很多测试用例。之后我会运行这些测试并使用gcov检查代码覆盖率。 gcov似乎在成功完成时更新覆盖数据。 然而,一些测试失败(assert语句不成立),导致程序中止,gcov没有统计本次运行中覆盖的行数。 是否有任何方法使g...

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

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

8得票1回答
使用 Visual Studio 和 gtest 进行代码覆盖率

有人曾经在Visual Studio中使用过gtest吗?如果是,您如何获得代码覆盖率报告?我想配置我的项目以生成覆盖率数据,但似乎没有其他人使用gtest/Visual Studio与gcov或任何其他代码覆盖率。

8得票4回答
如何在嵌入式设备中进行代码覆盖率测试

我为一个非POSIX嵌入式系统编写了一个项目,所以我不能使用gcc选项--coverage(我没有读或写)。还有什么其他方法可以生成类似于gcov的输出。我确实有一个输出函数。

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

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

8得票2回答
iPhone:无法让模拟器生成.gcda分析数据文件

我正在尝试使用iPhone模拟器对我的代码进行分析。我已经启用了“生成测试覆盖文件”和“仪器化程序流程”,并在链接器标志中添加了“-lgcov”。根据我所读到的所有内容,这应该是我需要进行的全部设置。 更新:启用“生成测试覆盖文件”会触发“-ftest-coverage”标志,而启用“仪器化...

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

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

7得票1回答
了解 gcov 文件中的分支

我正在努力理解gcov工具的输出。运行它没有选项是有意义的,但我想尝试理解分支覆盖率选项。不幸的是,很难理解这些分支是什么以及为什么它们没有被执行。下面是一个方法的输出(使用最新的LLVM / Clang构建进行编译)。 function -[TestCoverageAppDelegate ...