我正在尝试对共享库进行覆盖测试。我选择 gcov/lcov 是因为它是免费和开源的,这意味着我可以立即尝试(商业软件需要获得批准/购买,必须做出很多决定 - 它花费时间)。
情况如下 - 库 - 我们的产品,用 Fortran 编写,然后用于仿真软件(具体而言,来自 MSC.Software 的 ADAMS)。我可以使用 -fprofile-arcs -ftest-coverage 编译该库,如果 ADAMS 使用它,它可以正常工作。但是,不会创建 .gcda 文件。
有一个小的测试可执行文件来测试库的基本行为(方法的小子集)。如果我用覆盖测试开关编译这个可执行文件,我会得到可执行文件本身和库的 .gcda 文件。
问题是:如果使用该库的可执行文件未使用覆盖测试开关编译,是否可以为该库调用 gcov 测量?如果是,如何?
可以编写广泛的测试,但这几乎就像复制 ADAMS(或任何其他模拟包)一样。还是我选择了错误的覆盖测试工具,我应该转向商业产品?
先感谢您。
麦克风