|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
其实你不用Struts,spring这些工具,直接用jsp,servlet能够很方便地写出来,而且,可以根据个人的水平、爱好,有很多方案。而struts,spring这些工具的出来。
单位测试作为包管软件质量及重构的基本,早已取得宽大开辟职员的承认。单位测试是一种细粒度的测试,愈来愈多的开辟职员在提交功效模块时也同时提交响应的单位测试。关于年夜多半开辟职员来说,编写单位测试已成为开辟过程当中必需的流程和最好理论。
对一般的逻辑组件编写单位测试是一件简单的事变,因为逻辑组件一般只必要内存资本,因而,设置好输出输入便可编写无效的单位测试。关于略微庞大一点的组件,比方Servlet,我们能够自行编写摹拟对象,以便摹拟HttpRequest和HttpResponse等对象,大概,利用EasyMock之类的静态摹拟库,能够对恣意接话柄现响应的摹拟对象,从而对依附接口的组件举行无效的单位测试。
在J2EE开辟中,对DAO组件编写单位测试常常是一件十分庞大的义务。和其他组件欠亨,DAO组件一般依附于底层数据库,和JDBC接口大概某个ORM框架(如Hibernate),对DAO组件的测试常常还需引进事件,这更增添了编写单位测试的庞大性。固然利用EasyMock也能够摹拟出恣意的JDBC接口对象,大概ORM框架的次要接口,但其庞大性常常十分高,必要编写大批的摹拟代码,且代码复费用很低,乃至不如间接在实在的数据库情况下测试。不外,利用实在数据库情况也有一个分明的坏处,我们必要筹办数据库情况,筹办初始数据,而且每次运转单位测试后,其数据库现有的数据将间接影响到下一次测试,难以完成“立即运转,重复运转”单位测试的优秀理论。
本文针对DAO组件给出一种较为符合的单位测试的编写战略。在JavaEE开辟网的开辟过程当中,为了对DAO组件举行无效的单位测试,我们接纳HSQLDB这一玲珑的纯Java数据库作为测试时代的数据库情况,共同Ant,完成了主动天生数据库剧本,测试前主动初始化数据库,极年夜地简化了DAO组件的单位测试的编写。
在Java范畴,JUnit作为第一个单位测试框架已取得了最普遍的使用,无可争议地成为Java范畴单位测试的尺度框架。本文以最新的JUnit4版本为例,演示怎样创立对DAO组件的单位测试用例。
JavaEEdev的耐久层利用Hibernate3.2,底层数据库为MySQL。为了演示怎样对DAO举行单位测试,我们将其简化为一个DAOTest工程:
因为将Hibernate的Transaction绑定在Thread上,因而,HibernateUtil类卖力初始化SessionFactory和猎取以后的Session:
publicclassHibernateUtil{
privatestaticfinal SessionFactorysessionFactory;
static{
try{
sessionFactory= newAnnotationConfiguration()
.configure()
.buildSessionFactory();
}
catch(Exceptione){
thrownew ExceptionInInitializerError(e);
}
}
publicstaticSession getCurrentSession(){
return sessionFactory.getCurrentSession();
}
}
HibernateUtil还包括了一些帮助办法,如: publicstaticObjectquery(Classclazz,Serializableid);
publicstaticvoidcreateEntity(Objectentity);
publicstaticObjectqueryForObject(Stringhql,Object[]params);
publicstaticListqueryForList(Stringhql,Object[]params);
在此不再多述。
<p>
他们对jsp,servlet,javabean进行封装就是为了展示他们的某个思想,与java的开发并没有必然的关系,也不见得在所以情况下,别人使用起来会简单。 |
|