Spring结合Junit进行测试

项目中要使用Junit进行测试,查了资料才知道Spring已经在其中对于与Junit结合帮用户做了很多工作,参考一篇博文spring junit完美解决方案开始集成,当然过程并不是直接Copy代码就OK的。

首先不用下载junit的jar包(junit.org),本人多此一举的下载了一个Junit4.12.jar,结果倒使得运行测试实例的时候报 java.lang.ClassNotFoundException:xxx.xxx.xx.我的测试实例类(Spring已经还了junit的jar包,在创建第一个实例时会有提示)

接着写测试用例,这里又出现一个小问题,Asssert不被推荐使用了。查查书,又搜了几篇博文了解到现在推荐使用assertThat了(原因以后再补充吧,如果哪位大牛了解其中原由可以分享下^_^)。这里注意,因为assertThat要以Matcher做为参考之一。而Matcher又是基于Hamcrest匹配符声明的,所以还需要下载Hamcrest的JAR包(下载地址:https://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-1.3.zip&can=2&q=)。

下面的博文对于匹配值的介绍较为详情,可供参考

在测试Dao的时候报如下错误:

org.hibernate.HibernateException: No Session found for current thread

参考了:http://www.yihaomen.com/article/java/466.htm

因为项目中的事务是配置在Service层的,于是在测试方法上加了@Transactional的注解就OK了

相关推荐