DI让测试驱动开发不再是一句空话

          DI让测试驱动开发不再是一句空话
如今,各种开发方式层出不穷,像XP开发,敏捷软件开发,测试驱动开发,等等。
也许明天有会冒出来很多不同的东东,所以说阿,软件这个行业总能给你一些新的东东。

这里先介绍下相关概念。  首先是时下非常流行的概念IOC(Inversion of control),而IOC有向接口一样,有很多种实现策略,其中工人比较不错的是DL(Dependency Lookup),DI(Dependency Injection);而其中的DI又有常用的2种实现策略Setter Injection 和 Constructor Injection .

由于之前接触了一点点Spring这个优秀的框架,发现了他却又很多好处,其中一个就是方便了测试。不知道大家以前的Web系统是否方便写一些测试用例呢?例如JUnit集成测试。有些比较旧的项目中,应用代码太依赖于容器了,在应用代码中不时出现JNDI就是出现容器的API,这使得应用代码在脱离容器的情况下不可能运行,同时,这对集成测试也造成了一种难以消除的壁垒。

用过Spring 的人知道,Spring这个轻量级容器是一个非常不错的框架,其中它支持Setter Injection 和 Constructor Injection .这2种注入方式,我们一般情况下在应用代码中都使用Setter Injection,通常学要Constructor Injection 可以用Setter Injection代替,在应用代码重构时,通常也是这样。这样应用代码中不需要再依赖容器,应用代码中用到的所有资源都是通过JavaBean设置进来,代码本身不知道它从哪里来,也不需要知道它如何来的。这样,我们的应用代码在开发阶段,对主要的类和方法就可以方便的利用mock对象进行Junit测试了。
               测试驱动开发因此不再是一句空话。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值