【发布时间】:2020-06-18 11:32:14
【问题描述】:
假设我在机器 A 上构建了覆盖范围的项目。将项目的可执行文件复制到机器 B 中。使用机器 B 上的这些可执行文件运行测试。有没有办法收集这些运行的覆盖结果?
【问题讨论】:
标签: c++ ssh profiling code-coverage gcov
假设我在机器 A 上构建了覆盖范围的项目。将项目的可执行文件复制到机器 B 中。使用机器 B 上的这些可执行文件运行测试。有没有办法收集这些运行的覆盖结果?
【问题讨论】:
标签: c++ ssh profiling code-coverage gcov
我认为您可以通过在编译和链接时使用 -fprofile-generate 标志来实现这一点。 因此,当您编译时,您将在机器 A 中生成 .gcno 文件。现在您将可执行文件传输到机器 B 并运行可执行文件。这将在您在机器 B 的 -fprofile-generate 标志中提供的路径中创建 .gcda 文件。
现在只需将您的 .gcda 文件传输回机器 A(您的 .gcno 文件所在的位置)并运行 gcov ,它将为您提供在机器 B 上运行的覆盖率报告。
希望这会有所帮助。
【讨论】: