如何为 Qt 设置 Bullseye 代码覆盖率

Posted

技术标签:

【中文标题】如何为 Qt 设置 Bullseye 代码覆盖率【英文标题】:How can i setting Bullseye Code Coverage for Qt 【发布时间】:2020-04-17 01:57:05 【问题描述】:

我想为 Qt 使用 Bullseye 代码覆盖率。但是,我无法设置环境。(Qt 创建者)

我找到下面的链接并关注https://www.bullseye.com/help/tool-qtCreator.html

Bullseye Code Coverage for Qt

第 1 步。我在main.pro下面添加了

QMAKE_CC           = "\"C:/Program Files (x86)/BullseyeCoverage/bin/gcc\""
QMAKE_CXX          = "\"C:/Program Files (x86)/BullseyeCoverage/bin/g++\""
QMAKE_LINK         = $$QMAKE_CXX
QMAKE_LINK_C       = $$QMAKE_CC

第二步。我检查了 Makefile.Debug。

MAKEFILE      = Makefile.Debug

####### Compiler, tools and options

CC            = "C:/Program Files (x86)/BullseyeCoverage/bin/gcc"
CXX           = "C:/Program Files (x86)/BullseyeCoverage/bin/g++"

但是第 3 步,如何“启用覆盖构建”??

谁能轻松解释接下来的步骤?

【问题讨论】:

构建的时候,有没有.cov(覆盖)文件? Build > Run qmake 然后Build > Rebuild project 我做了 Build > Run qmake 然后 Build > Rebuild project。但是,.cov 文件不存在 【参考方案1】:

对于遇到相同问题的任何人,“Coverage Build”是一个 Bullseye 选项,可从其工具菜单访问(我认为这是 QtCreator 的一些选项)。

完成 OP 问题中的步骤 1. 和 2. 后:

    转到 Bullseye 并激活 Coverage Build(如果您不激活它,将进行正常构建) 编译 test.cov 文件应该出现在 Qt 项目的构建目录中 创建一个 COVFILE 环境变量,其值为 test.cov 文件的完整路径 重启 QtCreator 并重建

有助于排除故障的一件事是查看 QtCreator 中的“编译输出”。如果 COVFILE 设置正确,将显示其值。如果不是,则覆盖率统计信息很可能为空。

【讨论】:

以上是关于如何为 Qt 设置 Bullseye 代码覆盖率的主要内容,如果未能解决你的问题,请参考以下文章

如何为 Angular 7 项目设置 sonarqube

Salesforce Lightning - 如何为 Lightning 设置 nooverride,但在 Classic 中保留覆盖

如何为复选框设置对齐对齐?

如何为基于 Typescript 的 AngularJS 项目配置 SonarQube?

Azure DevOps:如何为不同的测试(.net core、angular)合并两个代码覆盖率报告

Qt:如何为 MAC 定义 Cmd+key 快捷键