我使用gcov库测量我的代码的覆盖率,我想以用户友好的格式生成覆盖率报告。我已经找到了lcov实用程序,但它与Windows环境不兼容(主要是因为解析路径的方式)。有没有人知道有效支持Windows的lcov端口?

似乎在Windows上运行它会很容易(它认为甚至可以通过模仿unix shell命令的行为的少数创意批处理/ perl脚本来解决),并且该工具非常有用,所以我想有人可能已经做过了。

有帮助吗?

解决方案

虽然它可能很脏,但是可以似乎在cygwin下工作。您可能还对问题感兴趣我测量CppUnit测试覆盖率(在win32和Unix上)?及其答案。 Visual Studio 似乎提供了代码覆盖率报告。

其他提示

这里有一个积极支持的lcov genhtml端口用于Windows: https://github.com/RickSBrown/jgenhtml

它专门设计用于运行跨平台 - 路径中的反斜杠没有问题。

还有一个Windows版本的LCOV https://github.com/valbok/lcov 解释如何使用它。 我们在使用原生或其他版本的LCOV时遇到了一些问题。例如,从这里 http://简单-embedded.blogspot.com/2014/07/code-coverage-html-reports-using-lcov.html

我们的流程如下:

  1. 使用ARM QNX GCC编译器在Windows中构建项目,收集gcno文件。

  2. 将二进制文件和配置复制到QNX下的目标并运行它们,收集gcda文件。

  3. 运行LCOV(在Windows或Linux上)以创建报告。

  4. 如果使用LCOV的原生版本,由于Windows和Linux路径的混乱以及LCOV脚本中的一些错误,报告将被破坏。 我们必须稍微修复脚本以避免像dir重复,斜杠,损坏路径等问题。

Donald MacQueen在 http://www.macqueen.us/lcov上完成了Windows版本。 HTML 但我还没有测试过。 我已经制作了自己的版本,你可以在这里找到:
http://simply-embedded.blogspot.com/2014/07/code-coverage-html-reports-using-lcov.html
这是在LCOV版本1.11上完成的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top