现在的位置: 首页 > 综合 > 正文

SSH下做Junit测试

2016年07月13日 ⁄ 综合 ⁄ 共 816字 ⁄ 字号 评论关闭

我们知道如果你用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

抱歉!评论已关闭.