gpt4 book ai didi

c++ - 可执行文件或静态/动态库中的谷歌测试?

转载 作者:行者123 更新时间:2023-11-28 03:45:53 24 4
gpt4 key购买 nike

Google 建议将 googletest 链接到可执行文件中,并通过命令行参数执行测试。

我使用过 C# 和 Java 单元测试框架,并且更喜欢测试运行器连续跨多个库/组件执行测试。

  • 拥有较大代码库(许多库)的人们如何管理他们的 googletests?
  • 你有多个可执行文件吗?您使用 shell 脚本等吗?
  • 您如何处理测试结果?

最佳答案

在我们的项目中,我们对某些特定模块(大约 60 个模块)进行了数百个单元测试,并且我们使用的是 googletest。为了避免在我们的项目的 bin 目录中有这么多的可执行文件,我们在不链接它们的情况下编译了我们的单元测试。我们还为每个单元测试文件创建了 *.unit_dep 文件,我们在其中指定了链接器的所有依赖项。

最后,我们编写了一个简单的程序来打开这些 un​​it_dep 文件,在运行时将我们的单元测试编译到共享库中,然后通过 dlopen() 动态加载这些库,并通过调用 googletest 库的 main() 函数来执行。测试完成后,我们删除所有临时 *.so 文件。

好处是我们只有一个运行所有测试的可执行文件。付出的代价是创建共享库的一些开销时间。

关于c++ - 可执行文件或静态/动态库中的谷歌测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7703456/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com