如何使用介子在C++中执行代码覆盖?

How to perform code coverage in C++ using meson?

本文关键字:执行 代码 覆盖 C++ 何使用      更新时间:2023-10-16

我在C++项目中使用介子和忍者作为构建系统,并且已将catch2配置为测试框架。 我想知道如何使用我编写的测试执行代码覆盖率。 我读了这个页面,https://mesonbuild.com/Unit-tests.html 但对我来说似乎很清楚,有人可以帮忙吗?

您应该使用与覆盖率相关的目标之一:覆盖率文本覆盖率 html覆盖率 xml,如此处所述。或者只是尽可能尝试所有这些的覆盖范围:

$ ninja coverage -C builddir

结果将写入./builddir/meson-logs目录。

请注意,要生成 html 覆盖率报告,您需要由lcov包安装的lcovgenhtml二进制文件。