如何为 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 代码覆盖率的主要内容,如果未能解决你的问题,请参考以下文章
Salesforce Lightning - 如何为 Lightning 设置 nooverride,但在 Classic 中保留覆盖
如何为基于 Typescript 的 AngularJS 项目配置 SonarQube?