谷歌C++测试

gtest,英文全称是GoogleC++TestingFramework,英文简称是GoogleTest,中文译为“谷歌C++测试框架”,它是从谷歌内部诞生并受到业界追捧的一个非常优秀的测试框架,支持如自动发现测试、自定义断言、死亡测试、自动报告等诸多功能。

  其他著名的自动化测试框架产品还有CppUnit、CxxTest、JUnit、PyUnit等。

  如果你是一名开发工程师,或者你编写的程序要用到生产环境中,那么,你不可避免的需要学习和掌握一种自动化测试框架,以确保你的程序测试充分,质量上乘。

  gtest官网教程原文,在这里。

  【介绍:为什么要选择谷歌C++测试框架】

  因为:“谷歌C++测试框架可以帮助你编写出更好的C++测试程序”。

  无论你的开发是基于Linux、Windows还是Mac,只要你使用的是C++语言,gtest都能够帮助到你。

  那么,到底什么才是好的测试,gtest又如何实现这种好的测试的呢?我们是这样认为的:

  ·1.测试应该是独立的且可重复的。

  (如果一个测试的结果是依赖于另一个测试的结果的,将是件很痛苦的事情。而gtest可以有效的避免这一点,它会确保每一个测试以一个独立对象的形式存在。当一个测试失败时,gtest支持你在独立的环境中进行调试。)

  ·2.应该有一套方法较好的来组织我们的测试,这种组织方法要能够较好地反映程序代码的结构。

  (gtest会将test分组到“testcase”中这样可以很好的来组织和管理所有的测试了。同时,testcases之间既可以共享信息,也可以嵌套。这种组织规则,会非常有利于记忆和管理。如果所有项目的测试都采用一致的组织规则,那么人员在测试项目间的迁移成本也会大大降低。)

  ·3.测试应该是可迁移的且可复用的。

  (开源社区中有很多的代码是“平台中立的”,也就是兼容多种平台,因而,这些代码的测试也应该遵循“平台中立”的原则。基于这种考虑,gtest支持多种操作系统平台、多种编译器,所以,gtest可以很好的支持这类测试工作。)

  ·4.在测试失败时,要能够提供足够充分的测试信息。

  (gtest并不会在首次失败后就停止工作,取而代之的是,gtest会停止当前这个测试,继续下一个测试。当然,你完全可以设置让gtest在继续下一个测试的同时,输出这次测试中非致命失败的相关信息,这样,你就可以在一个测试周期中,侦测和修复更多个bugs。)

  ·5.测试框架应该让开发者从琐碎重复的工作中解脱出来,让它们能专注在测试内容上。

  (gtest会自动的扫描和跟踪所有定义的测试,而不会让开发者一个一个去列举。)

  ·6.测试应该是高效的。

  (使用gtest,你可以复用不同测试中的资源,另外,set-up/tear-down也支持“一处定义,多处复用”的特性。)

  由于gtest是基于xUnit框架设计实现的,所以如果你之前使用过JUnit或PyUnit的话,你会很容易上手;否则,你或许需要花上10分钟的时间来学习下相关的基础知识。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Google的测试单元是一种用于有效测试软件代码的工具。它是Google的开发团队在软件开发过程中广泛使用的一种方法。通过编写测试代码,开发人员可以验证他们的代码是否按照预期工作,并且可以快速检测和修复潜在的bug。 Google的测试单元通常使用C语言编写,这是一种广泛应用于系统级编程和性能优化的语言。C语言具有高效的执行速度和良好的内存管理能力,非常适合编写测试单元。测试单元的目的是尽可能地覆盖代码的各个分支和边界条件,以确保代码的质量和正确性。 Google的测试单元通常使用一种被称为Google Test的测试框架。这个框架提供了一套方法和工具,使开发人员可以编写并运行测试代码,并生成易于理解和报告的结果。这个框架支持各种测试技术,如单元测试、性能测试和集成测试,可以灵活地适应不同的测试需求。 Google测试单元的使用有助于提高软件开发过程中的效率和质量。它可以提供快速反馈,帮助开发人员在代码被集成到整个系统之前发现和解决问题。通过自动化测试过程,开发人员可以更好地进行代码重构和优化,从而提高软件的可维护性和性能。 总的来说,Google的测试单元是一种高效且可靠的工具,可帮助开发人员编写和运行测试代码,以验证软件的正确性和质量。它是Google开发团队在软件开发过程中的重要组成部分,可以有效提高整个开发流程的效率和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值