Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.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
谷歌测试vs CPPUNT:事实 在今后几年中设置C++单元测试框架的过程中,我们列出了GooLeestEt>/Stult>和CppUng/Stult>。我在这两方面都有一些经验,我最喜欢的是谷歌测试。无论如何,要说服我的老板,我需要一些事实,所以我在互联网上读了一些书,包括手册、维基页面和一些资料来源。我列出了一个GoogleTest的优势列表和一个CppUnit的优势(图形测试跑步者)。在这里,它们按感知到的有用性排序: 实例化_TEST_CASE_P以使用您想要的任何参数集(包括笛卡尔积)实例化测试用例 用于测试私有类成员的FRIEND_测试(用于所有遗留代码) 将断言转换为断点 非致命性资产 “开箱即用”googlemock集成 自动测试检测,无需枚举 可以禁用和启用测试 可以使用名称模式选择要运行的测试 值/类型参数化测试 用户定义谓词断言 死亡测试 更丰富的一套资产 类型断言 断言子例程 如果您使用较旧版本的gcc编译器,或者如果您的测试代码在vxWorks(或VxSim)上运行,那么可以使用_C++_Unit Testing_Tdd_Googletest_Cppunit - Fatal编程技术网

谷歌测试vs CPPUNT:事实 在今后几年中设置C++单元测试框架的过程中,我们列出了GooLeestEt>/Stult>和CppUng/Stult>。我在这两方面都有一些经验,我最喜欢的是谷歌测试。无论如何,要说服我的老板,我需要一些事实,所以我在互联网上读了一些书,包括手册、维基页面和一些资料来源。我列出了一个GoogleTest的优势列表和一个CppUnit的优势(图形测试跑步者)。在这里,它们按感知到的有用性排序: 实例化_TEST_CASE_P以使用您想要的任何参数集(包括笛卡尔积)实例化测试用例 用于测试私有类成员的FRIEND_测试(用于所有遗留代码) 将断言转换为断点 非致命性资产 “开箱即用”googlemock集成 自动测试检测,无需枚举 可以禁用和启用测试 可以使用名称模式选择要运行的测试 值/类型参数化测试 用户定义谓词断言 死亡测试 更丰富的一套资产 类型断言 断言子例程 如果您使用较旧版本的gcc编译器,或者如果您的测试代码在vxWorks(或VxSim)上运行,那么可以使用

谷歌测试vs CPPUNT:事实 在今后几年中设置C++单元测试框架的过程中,我们列出了GooLeestEt>/Stult>和CppUng/Stult>。我在这两方面都有一些经验,我最喜欢的是谷歌测试。无论如何,要说服我的老板,我需要一些事实,所以我在互联网上读了一些书,包括手册、维基页面和一些资料来源。我列出了一个GoogleTest的优势列表和一个CppUnit的优势(图形测试跑步者)。在这里,它们按感知到的有用性排序: 实例化_TEST_CASE_P以使用您想要的任何参数集(包括笛卡尔积)实例化测试用例 用于测试私有类成员的FRIEND_测试(用于所有遗留代码) 将断言转换为断点 非致命性资产 “开箱即用”googlemock集成 自动测试检测,无需枚举 可以禁用和启用测试 可以使用名称模式选择要运行的测试 值/类型参数化测试 用户定义谓词断言 死亡测试 更丰富的一套资产 类型断言 断言子例程 如果您使用较旧版本的gcc编译器,或者如果您的测试代码在vxWorks(或VxSim)上运行,那么可以使用,c++,unit-testing,tdd,googletest,cppunit,C++,Unit Testing,Tdd,Googletest,Cppunit,将其他调试信息添加到断言中,使用CPPFUnit的机会可能比使用Googletest framework更好 另一方面,googletest框架的另一个功能是提供3种不同级别的设置/拆卸: 每个程序 每个测试用例(或测试组) 每个测试实例 不确定CPPFUnit是否支持这一点,但这可能非常方便,尤其是对于遗留系统 另外,还有一个用于EclipseCDT的googletest插件。这些就是我看到的好处。有几个GUI测试运行程序: 我已经使用了第一个,它工作得很好,虽然它正在开发中,需要一些

将其他调试信息添加到断言中,使用CPPFUnit的机会可能比使用Googletest framework更好

另一方面,googletest框架的另一个功能是提供3种不同级别的设置/拆卸:

  • 每个程序
  • 每个测试用例(或测试组)
  • 每个测试实例
不确定CPPFUnit是否支持这一点,但这可能非常方便,尤其是对于遗留系统


另外,还有一个用于EclipseCDT的googletest插件。

这些就是我看到的好处。有几个GUI测试运行程序:


  • 我已经使用了第一个,它工作得很好,虽然它正在开发中,需要一些工作。不知道是否还有其他选择。

    如果您还没有查看,我之所以选择它,是因为我对可用的内容(包括gtest)不满意。您的列表中的大多数都是受支持的,如果不是,如果它是“必须具备”的功能,我可能会愿意添加它。

    一些答案专门针对谷歌测试功能。几年前,我在做一个类似的调查,谷歌测试当时并不存在。我选择了CXXTest,它有一种机制,可以通过Perl的预解析步骤枚举测试用例。这远远优于CppTest。也就是说,我对谷歌测试一无所知。一个图形测试员是一个优势?通常你想要一些可以很容易自动化的东西,因为自动化意味着你可以更容易、更频繁地获得测试反馈。你能在允许的开源许可下发布它吗?就像Apache 2.0或MIT许可证一样?我真的不记得使用了哪个许可证,但我认为它是MIT许可证。非常感谢,但尽管文本相同,License.txt并没有说它是MIT许可证。如果可以的话,你介意加上它吗(当然,当你有时间的时候)?这样地?我认为这将允许更多的人使用和尝试这个奇妙的框架:-)维基百科页面也没有说xUnit++是在MIT许可下发布的,可能是因为它没有在你的bitbucket repo中指定(我想):-)死链接?smb获得github上传?