zoukankan      html  css  js  c++  java
  • Junit4测试Spring

    使用Junit4.4测试 
    在类上的配置Annotation 
    @RunWith(SpringJUnit4ClassRunner.class) 用于配置spring中测试的环境 
    @ContextConfiguration(Locations="../applicationContext.xml") 用于指定配置文件所在的位置 
    @Test标注在方法前,表示其是一个测试的方法 无需在其配置文件中额外设置属性. 
     
    多个配置文件时{"/applic","/asas"} 可以导入多个配置文件 
     
    测试中的事务配置 , 
    AbstractTransactionalJUnit38SpringContextTests、 AbstractTransactionalJUnit4SpringContextTests 
    AbstractTransactionalTestNGSpringContextTests 
    已经在类级别预先配置了好了事物支持 
     
    在普通spring的junit环境中配置事务 
    在类之前加入注解 
    @TransactionConfiguration(transactionManagert="txMgr",defaultRollback=false) 
    @Transactional 
    在方法中主要使用的Annotation包括 
    @TestExecutionListeners({})---用于禁用默认的监听器 否着需要通过@contextconfiguration配置一个ApplicationContext; 
     
    @BeforeTransaction 
    @Before 
    @Rollback(true) 
    @AfterTransaction 
    @NotTransactional 
     
    Junit4.4下支持类,方便基于junit4.4的测试 
    AbstractJUnit4SpringContextTests: 
     
    AbstractTransactionalJUnit4SpringContextTests: 
    需要在applicationContext中定义一个datasource 
     
    2009年3月9日 
    目前Spring2.5只支持4.4的Junit进行测试 
    下面是一个简单的测试Demo 
     
     
     1 package com.gameplus.service.webService;
     2 
     3 import javax.annotation.Resource;
     4 
     5 import org.junit.Test;
     6 import org.junit.runner.RunWith;
     7 import org.springframework.test.context.ContextConfiguration;
     8 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
     9 
    10 @RunWith(SpringJUnit4ClassRunner.class)
    11 @ContextConfiguration(locations={"../../../../applicationContext.xml","../../../../applicationDatasource.xml"})
    12 public class UserServiceTest  {
    13     @Resource
    14     private IUserService userService;
    15     
    16     @Test
    17     public void testAddOpinion1() {
    18         userService.downloadCount(1);
    19         System.out.println(1);
    20     }
    21     @Test
    22     public void testAddOpinion2() {
    23         userService.downloadCount(2);
    24         System.out.println(2);
    25     }
    26 }
    27 


    注意需要新的Jar包如下 
    javassist-3.4.GA.jar 
    hibernate3.jar 
    hibernate-annotations.jar 
    尤其注意用新版的,旧版会出现类未找到的异常 

  • 相关阅读:
    监听器
    过滤器
    连接池与分页
    jdbc优化
    jdbc入门
    web开发mysql基础
    自定义标签
    jsp基础
    会话管理入门
    19. Remove Nth Node From End of List C++删除链表的倒数第N个节点
  • 原文地址:https://www.cnblogs.com/xiaojf/p/6841650.html
Copyright © 2011-2022 走看看