【原】我告诉你为什么要单元测试?
2010-06-29 22:49 bugfly 阅读(625) 评论(1) 编辑 收藏 举报以下的可能不算是文章,但我觉得足够说服你进行单元测试了。
本人接触单元测试不久,历经两个小项目经验,两个都是WebForm项目,第一个是LinQ+3层架构.NET3.5,这个暂时开发了一部分模块,还没有开发完成。一个是传统ADO.NET+3层架构.NET2.0旧系统扩展。这两个项目都是测试先行的驱动开发方式,业界称这种开发方式叫TDD,至于怎么进行TDD,我这里就不说了,也说不清,可能自己的方式不那么正中。
其实经历了这两个项目,我的感受是,两个字“自信”!但为什么会自信呢?很简单,传统开发方式是先设计再编码,找错方式是断点调式,先抛开设计这个概念,单说这种断点找错方式,这种方式好比一个检疫中心中,一大堆待检疫的病人围着一个检疫工作人员,工作人员不能保证所有病人都检疫完毕。而TDD,也是一个检疫人员,但不同的是,病人和检疫人员被一条只能通过一个人的路口相隔,检疫人员守在路口,检疫后的病人方可通过,如此做法,保证了通过通道的病人已经检疫,防止漏网之鱼。这就是单元测试的作用,简单而实用。传统的开发模式:1(开发):N(断点找错,项目初期可能很小,而项目后期N可能很大,随着项目庞大投资越多,不可预测) TDD开发模式:1(开发):N(N比较稳定,可预测):M(M一般是集成测试,这里的时间很小很小)。相比之下,前者是一个未知的投入,小项目很飘逸,而大项目就越做越乏力了,调试时间大于开发时间。而后者整个生命周期都是流水线,很平稳,所以TDD们能够自信起来。
本人才疏学浅,文章语言可能不痛楚,请笑纳,希望大家共同加入TDD队列,一起交流心得,一起分享经验。
作者:桀骜的灵魂
出处:http://www.cnblogs.com/HuntSoul/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。