【问题标题】:Boost C++ Unit Testing Code Coverage TeamCity提升 C++ 单元测试代码覆盖率 TeamCity
【发布时间】:2012-12-13 12:07:26
【问题描述】:
请原谅这似乎是一个新手问题。我在网上搜索了一段时间没有结果。
是否可以使用 Boost C++ 单元测试框架获得 TeamCity 的代码覆盖率,以及如何在 Teamcity 中考虑这一点。
【问题讨论】:
标签:
c++
boost
teamcity
code-coverage
【解决方案1】:
Google 建议 Boost 不提供代码覆盖率。相反,人们通常使用lcov (see also) 生成覆盖率统计信息。 lcov 的一个重要特性是您可以generate an HTML-formatted report 对其代码覆盖率进行统计。
让我们感到高兴的是,TeamCity 默认配置为在您的构建历史记录中创建一个带有“代码覆盖率”部分的“报告”选项卡。 (您可以通过浏览 Administration -> Report Tabs 来验证这一点。)要利用这一点,您必须向 TeamCity 提供包含覆盖 HTML 的构建工件。
- 在 TeamCity 中,浏览至您在其中进行测试的配置/模板
- 浏览到构建配置的“常规设置”部分
-
在 Artifacts 文本框中,输入以下内容:
$PATH_TO_LCOV_OUTPUT_DIR=>coverage.zip
TeamCity 将在 coverage.zip 工件中查找 index.html 文件并将其显示为报告。