我有一个使用静态库和可执行文件进行单元测试的小型设置。 运行 bazel Coverage 时,它会在单元测试二进制文件的测试日志文件夹中创建一个 Coverage.dat 文件。结果是 lcov 文件或 llvm profdata 文件。 Bazel 的覆盖率数据生成器似乎能够区分 Clang 和 GCC,但似乎无法生成报告。
有没有办法从覆盖率生成器获取一些统计数据?
最佳答案
我这样做bazel覆盖
这样:
bazel coverage -s \
--instrument_test_targets \
--experimental_cc_coverage \
--combined_report=lcov \
--coverage_report_generator=@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main \
//...
然后我以这种方式生成 HTML 输出。
genhtml /home/user1/.cache/bazel/_bazel_user1/e74a825d0eb0c2db4b6f8afd819b274c/execroot/__main__/bazel-out/k8-fastbuild/testlogs/foo_test/coverage.dat --output-directory coverage
关于c++11 - 如何获取 C++ 的 Bazel 代码覆盖率摘要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54905273/