代码改变世界

Google Test(Google C++ Testing Framework)简介

2008-11-08 09:56  ubunoon  阅读(3348)  评论(4编辑  收藏  举报
Google Test是Google C++ Testing Framework的一种非正式的称谓,是google最近发布的一个开源C++测试框架。具有以下特点:

Google's framework for writing C++ tests on a variety of platforms (Linux, Mac OS X, Windows, Cygwin, Windows CE, and Symbian). Based on the xUnit architecture. Supports automatic test discovery, a rich set of assertions, user-defined assertions, death tests, fatal and non-fatal failures, type-parameterized tests, various options for running the tests, and XML test report generation.


Google
的测试框架是在不同平台上(LinuxMac OS XWindowsCygwinWindows CESymbian)为编写C++测试而生成的。它是基于xUnit架构的测试框架,支持自动发现测试,丰富的断言集,用户定义的断言,death测试,致命与非致命的失败,类型参数化测试,各类运行测试的选项和XML的测试报告。

更多可参考它的主页:

http://code.google.com/p/googletest/

补充说明:
       对比cppunit,boost.test,Google Test使用更加简便。

      cppunit的mfc输出需要修改好些地方,头文件以及实现文件均需要修改,并且在不同的地方使用不同的宏名称,需要包含不同的头文件,比较繁琐。
 
      boost.test继承boost库的传统,虽然没有仔细使用过,但是从文档中可以看到还是比较复杂的。

     google test相对比较容易,可能为了符合JUnit移植过来的思想:程序员在最简单的情况下就能够使用JUnit,不用修改现有代码,也不用去了解很多库相关的内容以及语言特性。

    google test的单元测试仅需要TEST()和TEST_F()两个宏,真的佩服它的简洁。