Codecov:C++ 库的 gcov 代码覆盖率
Codecov: gcov code coverage for a C++ library
我正在编写一个小型 C++ 静态库。在 GitHub Actions 中,我有一个“单元测试”工作流,它编译并运行测试程序,然后将代码覆盖率提交给 Codecov 服务。它运行:g++ test.cpp library/library.cpp --coverage -o test
,然后是 ./test
,然后是 gcov -o . test.cpp
。在下一步中,结果将提交到我的 Codecov 帐户,其中包含标准 bash <(curl -s https://codecov.io/bash)
(将 CODECOV_TOKEN
设置为环境变量)。到目前为止一切正常。
但是,在报道中,我看到库目录中 .cpp
和 .h
文件的报告,还有 test.cpp
的报道。我对我的测试代码的覆盖率不感兴趣,它歪曲了统计数据。有没有办法只提交库文件的覆盖率报告?
没有简单的方法来排除 gcov
级别的文件,但我通过限制 codecov
提交解决了这个问题:https://docs.codecov.io/docs/ignoring-paths
我正在编写一个小型 C++ 静态库。在 GitHub Actions 中,我有一个“单元测试”工作流,它编译并运行测试程序,然后将代码覆盖率提交给 Codecov 服务。它运行:g++ test.cpp library/library.cpp --coverage -o test
,然后是 ./test
,然后是 gcov -o . test.cpp
。在下一步中,结果将提交到我的 Codecov 帐户,其中包含标准 bash <(curl -s https://codecov.io/bash)
(将 CODECOV_TOKEN
设置为环境变量)。到目前为止一切正常。
但是,在报道中,我看到库目录中 .cpp
和 .h
文件的报告,还有 test.cpp
的报道。我对我的测试代码的覆盖率不感兴趣,它歪曲了统计数据。有没有办法只提交库文件的覆盖率报告?
没有简单的方法来排除 gcov
级别的文件,但我通过限制 codecov
提交解决了这个问题:https://docs.codecov.io/docs/ignoring-paths