Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
测试C++;代码:使用测试库 我已经学习C++了,但这是我第一次进入C++项目(一个PET配置解析器库)。我正在用这个来测试这个。但我不知道我是否做对了_C++_Testing_Googletest - Fatal编程技术网

测试C++;代码:使用测试库 我已经学习C++了,但这是我第一次进入C++项目(一个PET配置解析器库)。我正在用这个来测试这个。但我不知道我是否做对了

测试C++;代码:使用测试库 我已经学习C++了,但这是我第一次进入C++项目(一个PET配置解析器库)。我正在用这个来测试这个。但我不知道我是否做对了,c++,testing,googletest,C++,Testing,Googletest,目前,我已经删除了这个Google测试库的一些部分,并将其放入我的项目test/googletest目录中。它工作正常,但我不知道这是否是我应该怎么做。我在我的项目中包含了测试框架的源代码,它将与我的代码一起发布。这让我感到不舒服 我走来走去,想看看其他人是如何处理这件事的。有些具有定制的框架let,大多数框架根本不测试代码就可以解决整个问题 我想知道我是否正确地采取了这一点,或者我如何才能采用一种测试方法,既不让框架出现在我的源代码树中,又让我发布带有用户可构建和可执行测试的代码?关于您的构建

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

我走来走去,想看看其他人是如何处理这件事的。有些具有定制的框架let,大多数框架根本不测试代码就可以解决整个问题


我想知道我是否正确地采取了这一点,或者我如何才能采用一种测试方法,既不让框架出现在我的源代码树中,又让我发布带有用户可构建和可执行测试的代码?

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

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

因此,签出发行版的用户如果想要测试构建,将需要安装svn。这是社会上的普遍做法吗?我只能凭我的经验来说话。但是,如果您通过svn/git签出一个项目,那么您可以期望安装该特定系统,不是吗?afaik gtest在svn和git上都可用。但我是根据我在一些项目中的经验而不是“社区中的一般实践”来说话的。我对社区不太了解。Faik gtest没有git存储库,但我可以维护他们存储库的git镜像。这种“在进行测试时获取”的方法似乎是个好主意。谢谢