我使用junit 4.11和spring-test-4.1.5编写集成测试用例。我使用@ContextConfiguration注释加载configurations.like,
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes ={ApplicationConfig.class,SpringConfiguration.class }, initializers = {CustomProfileResolver.class, AppInitializer.class}, loader = SpringApplicationContextLoader.class)如您所见,我正在使用两个配置类。我面临的问题是我想要在SpringConfiguration.class ApplicationConfig.class.之前加载的我试着倒车,但没起作用。这里不能指定@order。
那么,如何排序这些配置类的加载,这是可能的吗?
发布于 2015-07-02 16:16:49
@ContextConfiguration及其支持类(如MergedContextConfiguration、AnnotationConfigContextLoader、AbstractTestContextBootstrapper等)目的是保留通过@Configuration属性classes声明的@ContextConfiguration类的原始顺序。
因此,如果您可以验证地证明,颠倒SpringConfiguration和ApplicationConfig类的顺序并不会导致SpringConfiguration首先被处理,那么您已经在Spring中找到了一个bug。
如果您发现了错误,请在JIRA中报告。
谢谢,
相同的
发布于 2016-12-01 11:18:05
使用@ContextHierarchy
@ContextHierarchy({
@ContextConfiguration(classes = {SpringConfiguration.class}),
@ContextConfiguration(classes = {ApplicationConfig.class})
}https://stackoverflow.com/questions/31003176
复制相似问题