欢迎来到天天文库
浏览记录
ID:21810104
大小:370.50 KB
页数:8页
时间:2018-10-24
《对基于spring框架j2ee mvc web组件测试》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、对基于Spring框架的J2EEMVC组件测试---—没有涉及HttpServletRequest等容器的对象时1、对SpringMVC的控制器组件进行测试(1)以“在JBUilder中创建Spring的MVCWeb应用+UserLogin(1).doc”一文中的控制器作为测试目标类(2)测试设计的目标----容器外的单元测试毫无疑问,我们的UserLoginController控制器类必须从HttpServletRequest中取得用户的表单数据,然而如果这么设计的话,我们的TestCase勢必与Servlet容器相依赖,因而无法独立地进行容器外的单元测试,而应
2、该是“容器内的单元测试”。为了能独立于容器进行单元测试,我们设计了一个UserLoginForm---?,它负责存储HttpServletRequest中的表单的登录数据,而UserLoginController上拥有一个onSubmit()方法,专门负责处理UserLoginForm对象并返回一个ModelAndView对象。2、新建一个TestSpringMVCFormController项目(对前面的测试采用两个Project的方式来进行测试)3、配置该项目(1)引入Spring的系统包(2)引入被测试的项目(3)引入被测试类文件UserLoginContr
3、oller.java4、为前面的UserLoginController提纲一个测试用例类TestUserLoginController,springwebappttest,基类为junit.framework.TestCase再进入下一步,将出现下面的内容但JBuilder出现一个错误!错误的原因是由于我们控制层组件类中的onSubmit方法为protected类型。protectedModelAndViewonSubmit(ObjectformBean)throwsException{}因此,为了能够对它进行测试,我们需要将它从protected类型改变为pub
4、lic类型publicModelAndViewonSubmit(ObjectformBean)throwsException{}5、编程它:packagespringwebappttest;importjunit.framework.*;importspringwebapp.*;importorg.springframework.web.servlet.*;importorg.springframework.context.ApplicationContext;importorg.springframework.context.support.FileSystem
5、XmlApplicationContext;publicclassTestUserLoginControllerextendsTestCase{privateUserLoginControlleruserLoginController=null;privateUserLoginFormuserLoginForm;protectedvoidsetUp()throwsException{super.setUp();//下面根据实际改变,同时还应该注意“userLoginController”的定义是在那个*.xml文件中/*StringspringXMLFilePat
6、h="E:/SpringWebApp+UserLogin/SpringWeb/WEB-INF/springapp-servlet.xml";*/StringspringXMLFilePath="D:/JUnitExmp/SpringWebApp+UserLogin/SpringMVCWeb/WEB-INF/userManager.xml";ApplicationContextapplicationContext=newFileSystemXmlApplicationContext(springXMLFilePath);userLoginController=(Us
7、erLoginController)applicationContext.getBean("userLoginController");userLoginForm=newUserLoginForm();}protectedvoidtearDown()throwsException{userLoginController=null;userLoginForm=null;super.tearDown();}publicvoidtestOnSubmit()throwsException//测试成功登录的状态{userLoginForm.setUserName("yang
8、");//
此文档下载收益归作者所有