4

我研究 C++ 已经有一段时间了,但这是我第一次进入 C++ 项目(一个宠物配置解析器库)。我正在使用Google C++ 测试框架来测试它。但我不知道我是否做得对。

目前,我已经删除了这个 Google 测试库的某些部分并将其放入我的项目Test/googletest目录中。它工作正常,但我想知道这是否是我应该这样做的方式。我在我的项目中包含了测试框架的源代码,它将与我的代码一起发布。这让我感到不舒服。

我在GitHub 上浏览了一些 C++ 项目,试图了解其他人是如何处理这个问题的。有些有自定义的框架,大多数解决了整个问题,根本不测试代码。

我想知道我是否正确,否则我如何采用一种测试方法,既可以将框架排除在我的源代码树之外,又可以让我发布我的代码,其中包含用户可构建和可执行的测试?

4

1 回答 1

3

关于你的构建,你做对了。gtest 自述文件明确指出,与您的项目一起构建 gtest(您可以从两个目标文件中打包一个 libgtest.a)是首选的方法。

关于分发:理想情况下,您可以让您的构建工具(make、CMake 等)从其自己的存储库中签出/获取所需的 gtest 版本。但是我认为如果你在你的项目中添加一个“外部”文件夹并在你自己的存储库中包含像 gtest 这样的东西,我认为不会有太大的危害。

于 2013-06-11T09:17:03.620 回答