S.l.e!ep.¢%

像打了激速一样,以四倍的速度运转,开心的工作
简单、开放、平等的公司文化;尊重个性、自由与个人价值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
http://hi.baidu.com/blue_never_died/blog/item/7f57f2de2c6fbf5594ee378c.html

TUT--最轻量级的C++单元测试框架(1)
2007-04-03 16:56

开源就是好!愿上帝保佑那些吃饱了饭的程序员,保佑他们不断把自己的心血贡献出来。阿门。

这不,我现在又盯上了TUT,我认为她是我见过的最简洁、最轻量级的C++单元测试框架。

我发现自己患上了“轻量级依赖症”,对那些大而全的重量级东西不感兴趣,反而对那些架构简单,用起来轻便的东西十分入迷。

这也难怪,一般的软件总是倾向于把许多你很少或者根本用不着的功能塞给你,代价就是软件看起来相对笨重,不够敏捷。这种例子简直数不胜数。

好了,回归正题。TUT是Template Unit Tests的缩写,是一个C++的单元测试框架。她的网址是http://tut-framework.sourceforge.net/,作者是Vladimir Dyuzhev,目前居住在加拿大。

作者设计TUT的原因是他在开发中需要单元测试框架,在试用比较了其他C++单元测试框架后,觉得她们用起来都很繁琐,因此他决定自己搞一个。(人类多亏了有这种精神,才能不断向前发展。)

结果他成功了。按照作者的目标,他对TUT的期望是:

  • No C-style macros
  • No manual registration for test groups and methods
  • No libraries of any kind
  • Neutrality to user interface
  • No Javisms

    总而言之,就是不要运用丑陋的宏来产生代码,不要自己手工去注册测试用例,由TUT框架自动搞定,接口友好简单中立,不需要编译成库文件,直接包含.h文件即可,还有就是这是一个C++的框架,理所当然要按照C++的惯用法来设计,比如用RAII手法来代替其他框架常用的setUp()和tearDown()等。

    我试用了下,确实非常的方便,只需要几分钟就可以上手,并且没有多余的东西。一个字:爽!

    当然我研究TUT并不仅仅是使用她,我还希望了解学习她的架构和设计理念。在后面的系列文章中,我会对此进行分析,把自己的心得体会写出来。


  • 只有注册用户登录后才能发表评论。
    网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理