测试c++代码:使用测试库

Testing C++ code: Using test libraries

本文关键字:测试 c++ 代码      更新时间:2023-10-16

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

目前,我已经撕掉了这个谷歌测试库的一些部分,并把它放在我的项目Test/googletest目录。它工作得很好,但我想知道这是不是我应该做的。我在我的项目中包括测试框架的源代码,它将与我的代码一起发布。这让我觉得不舒服。

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

我想知道我是否采取了正确的方法,或者我如何采用一种测试方法,既可以使框架远离我的源代码树,又可以让我发布带有用户可构建和可执行测试的代码?

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

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