SSH下做Junit测试

来源:互联网 发布:python 接口 上传图片 编辑:程序博客网 时间:2024/06/11 20:07
我们知道如果你用Spring来管理你的Hibernate和Struts后,那么一些要访问的对象都交给Spring创建。如:
在UserServiceImpl中用到的UserDao接口,只有一个声明和一个Set方法。如果直接调用UserServiceImpl中的方法
进行Junit测试的话会报空指针的异常。因为我们直接访问UserServiceImpl时Spring没有帮我们创建UserDao的实例。
所以我们要自己去创建这个实例,也许你会想到在applicationContext.xml中我们已经配置了UserDaoImpl的Bean。
所以我们可以从那里获得,方法如下:

applicationContext.Xml

Java代码

    ......       <bean id="userDao"        class="com.accp.sshDemo.dao.impl. userDaoImpl">        <property name="sessionFactory" ref="sessionFactory"></property>       </bean>      ......  

UserDaoImplTest.java

java代码

    UserDao userDao= null;      @Before      public void setUp() throws Exception {      ApplicationContext ctx =          new FileSystemXmlApplicationContext("/WebRoot/WEB-INF/classes/applicationContext.xml");       userDao = (UserDao) ctx.getBean("userDao");      }  
这时就可以测试了

Java代码

    @Test      public void testGet() {       User user=userDao.get("00001");       assertEquals(user.getName,"admin");      }  

OK!!

注释* 详细  junit.org


0 0
原创粉丝点击