spring整合junit使用记录
参考地址:
[url]http://www.cnblogs.com/rainisic/archive/2012/01/22/spring_test_framework.html[/url]
1加入所需要的包
org.springframework.test-3.0.7.RELEASE.jar
JUnit4
以及项目所需要的包
spring的东西在这里下载http://www.springsource.org/download
junit的东西在这里下载https://github.com/KentBeck/junit/downloads
2测试类应该继承与AbstractJUnit4SpringContextTests或AbstractTransactionalJUnit4SpringContextTests
看具体的例子,
首先写一个BaseTest类,然后再写一个测试类,用测试类来继承BaseTest类,这样写的目的是避免每次写测试类都要加例如下面的东西,特别是如果需要加载的文件比较多时,这样写更好一点
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:beans.xml")
BaseTest
import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:beans.xml") public class BaseTest extends AbstractJUnit4SpringContextTests { public BaseTest() { super(); } }
下面是测试类
Service1Test
import javax.annotation.Resource; import org.junit.Test; import com.test.BaseTest; public class Service1Test extends BaseTest{ @Resource private Service1 service1; @Test public void testMethod1(){ service1.method1(); } @Test public void testMethod2(){ service1.method2(); } }
这样这个测试类就可以直接用junit来运行进行测试了。
备注:junit最好用带hamcrest版本的不然可能会出现下面的错误
java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
然后spring中用到的包也最好是统一的某一个版本,不要测试的是一个版本,另外的是其它的版本,不然容易出现错误
相关推荐
shirleypaddy 2020-10-19
qingmumu 2020-10-19
lustdevil 2020-10-18
ganlulululu 2020-10-12
lustdevil 2020-08-03
lustdevil 2020-07-18
lustdevil 2020-06-25
lustdevil 2020-06-21
zhengzf0 2020-06-21
宿命java 2020-06-15
JackYin 2020-06-14
dongxurr 2020-06-07
snowphy 2020-06-06
zhengzf0 2020-05-28
81901836 2020-05-26
Julywhj 2020-05-26