gpt4 book ai didi

c++ - 一些代码没有从代码覆盖率中移除

转载 作者:行者123 更新时间:2023-11-30 04:52:19 24 4
gpt4 key购买 nike

我想为我的 Qt/C++ 项目生成代码覆盖率报告。

我有一个简短的版本,其中有一个继承 QObject 的类:

#include <QObject>

class Baba : public QObject {
Q_OBJECT

public:
Baba();

void mange(int a);

signals:
void pouet();
};

我首先添加这个编译标志:

QMAKE_CXXFLAGS += --coverage
QMAKE_LFLAGS += --coverage

执行测试后,我执行以下步骤:

$ gcov main.cpp
$ lcov --capture --directory . --output-file capture.info
$ lcov --remove capture.info "*Qt*.framework*" "*.h" "*Xcode.app*" "*moc_*" --output-file filtered.info
$ genhtml filtered.info --output-directory out

不幸的是,尽管我在删除步骤中添加了 "*moc_*",但我仍然覆盖了文件 moc_Baba.cpp

我错过了什么?

最佳答案

检查 lcov source code 后,我设法通过将 "*moc_*" 替换为 "$$OUT_PWD/moc_*" 来删除 moc_* 文件。

关于c++ - 一些代码没有从代码覆盖率中移除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54480987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com