java用junit测试service层方法的工具类

常规的写法:

可以直接在junit测试类上写注解

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:config/spring.xml"})
public class ScheWebServiceImplTest{

    @Test
    public void testDoCheckQatStatus() {
        System.out.println(123);
    }

}

但是每个都写岂不是很low,AbstractJUnit4SpringContextTestsAbstractTransactionalJUnit4SpringContextTests,这两个类已经用@RunWith修饰了,所以我们来做一个测试的基类:

import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;

@ContextConfiguration(locations = {"classpath:config/spring.xml"})
public class BaseJunit extends AbstractJUnit4SpringContextTests{

}

这样以后再做junit测试类的时候,只需让测试类继承基类就可以了。

基类继承AbstractTransactionalJUnit4SpringTests:执行测试后不会改变数据库的内容,也就是说你测试的操作都会回滚回去

继承AbstractJUnit4SpringContextTests :则不会回滚,操作会直接影响数据库

你可能感兴趣的:(Java)