Hello World
Spiga

标签:可测试性

我的TDD实践:可测试性驱动开发(下)

2009-10-19 00:48 by 老赵, 16881 visits
摘要:在上一篇文章里,我谈到自己在采用传统TDD方式进行开发时感到有些尴尬,最后不得不放弃这种先写测试再写代码最后重构的方式。不过我还是非常注重单元测试的实践,慢慢发现自己的做法开始转向另一种TDD方式,也就是“可测试性驱动开发”。简单的说,我现在采取的做法是,先开发,再测试,一旦发现产品代码不太容易测试,则将其重构为容易测试的代码。我发现,这种时刻注重可测试性的开发方式,其最终也能够得到质量较高的代码。上次谈的比较理论,而这次我便通过一个简单功能的开发过程,来表现我的思维方式及常用做法。 阅读全文

我的TDD实践:可测试性驱动开发(上)

2009-10-15 05:34 by 老赵, 18147 visits
摘要:TDD(测试驱动开发,Test Driven Development)是重要的敏捷实践之一,它的基本原理是用测试来带动开发,先写测试代码,再写开发代码,最后重构。许多TDD推广和实践者认为,这种方式易于带来高质量的代码。而如今,TDD也慢慢有了Test Driven Design,也就是测试驱动设计的意味。也就是说,它更像是一种设计方式了。这些理论我很愿意相信,也很支持,但是从实际角度来说,我还是较难接受正统的TDD行为。不过,我也在实际开发过程中总结出……怎么说呢,应该说是更适合我自己的实践方式,在此希望能和大家交流一下。 阅读全文

所有的成员都应该是virtual的吗?

2009-08-28 02:56 by 老赵, 5779 visits
摘要:这是一个由来已久的讨论,由于Java默认所有的方法都是可以被override的(除非手动写成final),因此从C#语言设计起初就有此番争论,甚至让Anders都出来解释了一下。最近又有人在讨论这方面话题了,虽然我的看法并没有超出这些人所涉及的范畴,但是我还是打算谈一下我的理解。退几步说,就当补充一些“实例”吧。 阅读全文

使用ASP.NET Abstractions增强ASP.NET应用程序的可测试性

2009-04-22 17:51 by 老赵, 20442 visits
摘要:关于可测试性的重要性,老赵觉得已经不需要再过多强调了。如果您想要获得高生产力,为代码编写单元测试似乎已经是必经之路了。不过可惜的是,ASP.NET应用程序给人的感觉,始终是对可测试性不太友好,其最重要的原因之一在于对HttpContext对象的高度依赖,而我们很难对HttpContext编写Mock或Stub。而现在,我们可以基于ASP.NET Abstraction来辅助ASP.NET开发,改进代码的可测试性。 阅读全文
1
使用Live Messenger联系我