锁定老帖子 主题:基于spring3的单元测试
精华帖 (0) :: 良好帖 (0) :: 新手帖 (11) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2011-09-25
我们以前要进行单元测试,必须先得到ApplicationContext对象,再通过它得到业务对象,非常麻烦,重复代码也多.基于spring3的单元测试很好的解决了这个问题 基于spring3的单元测试主要用到了下面几个注解 @ContextConfiguration指定配置文件的路径,这个注解用在类上 @Resource 往测试类注入bean,这个bean必须在配置文件中配置,这个注解用在属性或set方法上 @Repeat 指定测试方法重复执行的次数,用在测试方法上 @Timed指定测试方法在多长时间执行完,如果在指定时间测试方法没有执行完,会抛异常 测试类除了可以使用以上的注解,同时要继承AbstractJUnit4SpringContextTests,只有继承这个类,才能从spring容器中得到注入对象
1.普通的单元测试
2.脱离web容器的springMVC的测试 传统认为,web应用的测试因为涉及到web组件,需要web容器的支持,这给测试带来复杂性.可不可以脱离web容器对web应用进行测试呢?spring告诉你可以. Spring自身提供了一个Mock实现:它可以轻松的对Web组件进行单元测试,就象测试POJO(普通Java对象)一样简单.它在J2EE的WEB端为每个关键接口提供了一个Mock实现 A. MockHttpServletRequest:HttpServletRequest接口的mock实现。 B. MockHttpServletResponse:HttpServletResponse接口的mock实现。 C. MockHttpSession:HttpSession接口的mock实现。 ......
测试代码如下 controlle类: 测试类:
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-09-25
不错。正好用到了
|
|
返回顶楼 | |
发表时间:2011-09-25
学习了,有时感觉配置比较烦,还不如直接写个junit的简单类,然后把spring的配置文件直接java语句写进去,后面的测试类继承就行了.
|
|
返回顶楼 | |
发表时间:2011-09-26
用了注解很方便,学习了
|
|
返回顶楼 | |
发表时间:2011-09-26
项目中正在用,结合DBunit 测试
|
|
返回顶楼 | |
发表时间:2011-09-27
AbstractTransactionalSpringContextTests spring2.0就有这个了
|
|
返回顶楼 | |
发表时间:2011-09-27
学习备份一下
|
|
返回顶楼 | |
发表时间:2011-10-03
我觉得Spring的测试模组挺好,但是@Repeat与@Timed就大可不必了,
为什么?因为Spring的测试模组不能取代像JUnit或是TestNG的存在, 看看您的程序中的@Test,这不是Spring提供的吧! 而@Timed在两个测试框架中,也都有了类似的设定, 至于@Repeat, 1+1=2 须要测试1遍以上吗? 重点是这个@Repeat是否支持并发测试? 也并发测试JUnit或是TestNG也都有了,所以我认为 @Repeat与@Timed是鸡肋般的存在 |
|
返回顶楼 | |
发表时间:2011-10-08
可以学习,可以利用。
|
|
返回顶楼 | |
发表时间:2011-10-08
最后一个图片挂了
|
|
返回顶楼 | |