Spring Junit集成测试

Posted junge8619

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Junit集成测试相关的知识,希望对你有一定的参考价值。

例子如下:

package com.junge.demo.spring;

import static org.junit.Assert.assertEquals;

import java.util.List;

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;

import com.junge.demo.spring.service.IPerface;
import com.junge.demo.spring.service.ServiceConfig;

/**
 * Unit test for simple App.
 */
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes=ServiceConfig.class)
public class AppTest {
    @Autowired
    private List<IPerface> perfaceList;
    
    @Test
    public void addTest() {
        System.out.println("333");
    }
    
    @Test
    public void playTest() {
        assertEquals(2, perfaceList.size());
    }
}

其中用到了2个注解

[email protected] 这是Junit提供的,注意Junit版本要和spring兼容,例如spring用4.1.13.RELEASE版本,Junt可以用4.12版本,如果不兼容,用例跑不起来。

[email protected] 这是spring提供的注解,用来配置spring的上下文配置,如果是使用javaconfig风格配置的,如上面例子所示;如果是使用xml文件配置的,可以用下面的配置:

@ContextConfiguration(locations = { "classpath:applicationContext.xml" })

 

一般在项目中测试时,会配置一个基类测试类,其他测试类都继承自该基类,这样就不需要在每一个测试类中添加配置。

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContext.xml" })
public abstract class BaseServiceTest {
    
    
}

 

以上是关于Spring Junit集成测试的主要内容,如果未能解决你的问题,请参考以下文章

Spring Junit集成测试

使用 Spring Boot 2.1.15.RELEASE(junit 4) 进行集成测试的 Bean 自动装配为 null

10. Spring集成Junit

Spring 集成Junit单元测试

Spring集成junit

Spring Boot集成Junit测试