Spring测试框架JUnit4.4
2015-11-06 22:40
357 查看
TestContext 可以运行在 JUnit 3.8、JUnit 4.4、TestNG 等测试框架下。
Spring的版本2.5+JUnit4.4+log4j1.2.12@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"http://www.cnblogs.com/../applicationContext.xml","http://www.cnblogs.com/../daoContext.xml"})
@TransactionConfiguration(transactionManager="transactionManager")
@Transactional
public class KindDaoTest
{
@Autowired
KindDao kindDao;
@Test
@Rollback(false)
public void findAll()
{
}
}
该单元测试的特点:运用注释,使得编写测试更加简单,以及可以设置是否回滚。
@RunWith(SpringJUnit4ClassRunner.class)
表示该测试用例是运用junit4进行测试,也可以换成其他测试框架
@TransactionConfiguration(transactionManager="transactionManager")为可选项,该项不会影响回滚的设置。
@ContextConfiguration(locations={"http://www.cnblogs.com/../applicationContext.xml","http://www.cnblogs.com/../daoContext.xml"})
该路径的设置时相当于该单元测试所在的路径,也可以用“classpath:xxx.xml”进行设置,该设置还有一个inheritLocations的属性,默认为true,表示子类可以继承该设置。
@Autowired
表示bean自动加载,而不用像之前的两个类要添加一个set的方法。
@Test
表示该方法是测试用例
@Rollback(false)
表示该测试用例不回滚
问题:
1.报错log4j:WARN No appenders could be found for logger (org.springframework.test.context.junit4.SpringJUnit4ClassRunner).log4j:WARN Please initialize the log4j system properly.
解答:将log4j.properties文件放在/resource下面
2.log4j的版本必须在1.2.12以后
注意:
操作数据库时,数据并没有真正插入到数据库中。这是TestContext起的作用,调用事务返回了并没有真正插入数据库。
相关文章推荐
- java中接口
- java中的抽象类
- JAVA中3大集合框架队列的使用
- 关于java初学者的心理
- java基本数据类型
- (转)个例子让你了解Java反射机制
- 传智播客 Java基础 day07笔记
- Java内存回收机制(第一讲)
- Java中的抽象类和接口区别
- java开发环境搭建
- 【Java】Java执行MySQL数据库的删除操作
- ActiveMQ消息中间件整合Java配置实例
- java 内存分配小结
- java JFrame居中
- Java学习笔记(1):重载方法
- java 多线程使用方法及Socket的使用
- struts2+ hibernate4 +spring4 匹配版本
- SLF4j用户手册
- Java关键字final、static使用总结
- 解决Eclipse导入项目工程出现The project was not built since错误