使用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
package com.d1xn.dao.center.game.imp.test;
importstatic org.junit.Assert.*;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
//加下面这句的话会调用一个上下文配置文件 文件名为 这个类名-context.xml
@ContextConfiguration
public class TestExamDAO {
@Autowired
private IExamDAO dao;
@Before
publicvoid setUp() throws Exception {
}
@Test
public void testGetExamByUserId() {
//省略
}
}
下面是位上面那个类准备的配置文件
TestExamDao-context.xml