Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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++ Visual Studio中支持Marmalade SDK的单元测试_C++_Visual Studio 2010_Unit Testing_Marmalade - Fatal编程技术网

C++ Visual Studio中支持Marmalade SDK的单元测试

C++ Visual Studio中支持Marmalade SDK的单元测试,c++,visual-studio-2010,unit-testing,marmalade,C++,Visual Studio 2010,Unit Testing,Marmalade,我们正在VisualStudio中使用,并通过git与团队共享文件。我们希望使用单元测试 有很多可能性 我们试图用VisualStudio的内置功能实现单元测试,所以我们只是在同一个解决方案中创建了一个新的测试项目。在我们尝试包含MarmaladeSDK文件之前,一切看起来都很好。编译器出现问题。MarmaladeSDK生成自己的项目属性,有“ARM(x86)Debug”之类的编译器,还有更多的编译器,而在测试项目中,只有Debug、Release之类的默认值。因此,代码无法正确编译。我可以把

我们正在VisualStudio中使用,并通过git与团队共享文件。我们希望使用单元测试

有很多可能性

  • 我们试图用VisualStudio的内置功能实现单元测试,所以我们只是在同一个解决方案中创建了一个新的测试项目。在我们尝试包含MarmaladeSDK文件之前,一切看起来都很好。编译器出现问题。MarmaladeSDK生成自己的项目属性,有“ARM(x86)Debug”之类的编译器,还有更多的编译器,而在测试项目中,只有Debug、Release之类的默认值。因此,代码无法正确编译。我可以把这些属性复制到测试项目中吗?行吗?如果我们能找到这个选项的答案,那就更好了

  • < P>,也可以使用一些单元测试C++框架。将其链接到与MarmaladeSDK创建相同的主项目中。但哪种框架将是最好的?有很多,我不知道什么是最好的。此外,我们还需要执行特殊的main.cpp来运行单元测试,对吗?如果您能提供最好的测试框架,以便在VisualStudio中通过一些教程轻松实现,我将非常感激


谢谢你的回答

我在这里试图解释我们如何在marmalade项目中使用版本控制,但是我真的很想知道是否有更好的解决方案

我们在所有客户机上使用
tortoise svn
,在服务器上使用
Visual svn server
。我们通常从windows资源管理器上下文菜单进行更新和提交,而不是从visual studio内部进行更新和提交,因为我们在过去遇到过一些问题


在测试时,我们通常创建一个新的存储库或使用当前的存储库。

“在测试时,我们通常创建一个新的存储库或使用当前的存储库。”。。。你能具体说明怎么做吗?您正在使用Visual Studio测试项目吗?如何包含MarmaladeSDK?关于SVN,我们正在visual studio build之外共享文件。我们不会将VisualStudio构建文件夹推送到SVN。因为在点击mkb之后,它会为特定的计算机生成新的构建,所以这种方式可以帮助我们克服特定计算机的绝对路径问题。我们从不使用visual studio build文件夹,我们只使用mkb打开项目,因此它消除了对visual studio环境的依赖。同样对于测试项目,我们只需在svn上创建一个新的测试存储库,并将其用于测试。测试完成后,代码将与主项目/存储库合并。有时使用相同的主存储库,根据测试的少数部分,在客户端计算机上的位置不同。您能更具体地介绍单元测试的实现吗?您使用的是单元测试框架还是VisualStudio测试项目?如何将MarmaladeSDK链接到其中?我刚刚开始介绍MarmaladeSDK。但是对于其他项目,我们使用C++谷歌测试框架来进行单元测试。我们有一个新的单元测试项目和它自己的入口点文件(main.cpp),它创建并运行测试套件。为了引用您想要测试的项目,您应该与TestProject共享标题和.LIB(对象文件)文件,这样C++编译器就能够找到您的类,链接器能够将测试绑定到类。