SpringJava配置单元测试

SpringJava配置单元测试,spring,Spring,我正在试用spring的java配置。在使用xml配置文件时,我的单元测试使用以下内容 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(....) 如果我使用的是java配置,我该怎么做。还是我应该使用 ApplicationContext appConfig = new AnnotationConfigApplicationContext(SimpleConfiguration.class); @ContextC

我正在试用spring的java配置。在使用xml配置文件时,我的单元测试使用以下内容

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(....)
如果我使用的是java配置,我该怎么做。还是我应该使用

ApplicationContext appConfig = new  AnnotationConfigApplicationContext(SimpleConfiguration.class);

@ContextConfiguration用于在处理测试用例时加载Spring配置。如果不需要,可以使用ClassPathXmlApplicationContext加载Spring配置

使用将配置位置作为字符串数组接收的

AnnotationConfigApplicationContext用于自动检测带注释的类。我不认为它可以用来加载配置文件。它类似于上下文:组件扫描


通过@Test等注释为Junit提供Spring测试支持。

从Spring 3.1开始,@ContextConfiguration现在完全支持@Configuration类;不需要XML

或者更具体地说,显示以下代码段:

@RunWith(SpringJUnit4ClassRunner.class)
// ApplicationContext will be loaded from AppConfig and TestConfig
@ContextConfiguration(classes={AppConfig.class, TestConfig.class})
public class MyTest {
    // class body...
}

AppConfig
TestConfig
都是@Configuration类(在@user373201的评论中称为“Java-config”类)

与我的问题无关。我想知道如何在使用Java配置类的同时使用@ContextConfiguration,因为可以使用源代码中使用的相同Java配置类,或者应该复制文件并将其放入测试文件夹中?您能否提供一个示例,说明如何将@ContextConfiguration与Java配置类一起使用?您所说的Java配置类到底是什么意思?请提供样品。