• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Google 开源了自己的 C++ 单元测试框架 : googletest

发布: 2008-7-07 12:20 | 作者: 陈硕 | 来源: 测试时代采编 | 查看: 1480次 | 进入软件测试论坛讨论

领测软件测试网 Google 在美国独立日这一天开源了自己的c++测试框架:googletest  http://code.google.com/p/googletest/

这个工具的主要作者是 Zhanyong Wan,他是 Google 测试技术组的软件工程师。

googletest 与 CppUnit 相比,有两个特点:

1. 使用简单,写 test case 不用分成声明和定义两部分,也不用自己注册 test suite。

CppUnit是从jUnit移植而来,而 C++ 没有 Java 那样的反射机制(和annotation,也没有C#那样的代码元数据 attribute,所以一般需要自己注册各个 test case。虽然 CppUnit 提供了一些宏,但是按照 C++ 成员函数 定义/声明 分离的原则,加一个test case还是得两头改。
而googletest采用了类似CppUnitLite的宏,让写test case就像写一个函数那样简单。

2. ASSERT 种类与信息更丰富。

googletest 中,你写ASSERT_LE(orderAmount, allowedAmount);表明 orderAmount 不大于 allowedAmount。如果这条assert没通过,那么出错信息里不仅有 orderAmount 和 allowedAmount 的值,还会有 “orderAmount” 和 “allowedAmount” 这两个字符串。这是用反射没法做到的,只能用宏实现。

当然,googletest还可以做“死亡测试”,即测试那些让程序退出的代码段。googletest 能 fork() 出一个新进程,然后检查新进程的exit status或新进程的死亡原因(kill by signal等)。

另外:Google C++ Coding Standards: http://code.google.com/p/google-styleguide/

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: google Google 单元 开源 框架 googletest


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网