Spring JUnit-Test nicht laden voller Anwendungskontext

Hallo, ich versuche, so spring junit-Testfälle... und habe dafür meine volle Anwendungs-Kontext geladen werden. Aber der junit test nicht initialisiert wird, die vollständige Anwendung Kontext.

Test Klasse:

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = Application.class)
public class MongoDbRepositoryTest {

    @Value("${spring.datasource.url}")
    private String databaseUrl;

    @Inject
    private ApplicationContext appContext;

    @Test
    public void testCRUD() {
        System.out.println("spring.datasource.url:" + databaseUrl);
        showBeansIntialised();
        assertEquals(1, 1);
    }

    private void showBeansIntialised() {
        System.out.println("BEEEAAANSSSS");
        for (String beanName : appContext.getBeanDefinitionNames()) {
            System.out.println(beanName);
        }
    }

Ausgabe:

spring.datasource.url:${spring.datasource.url}
BEEEAAANSSSS
org.springframework.context.annotation.internalConfigurationAnnotationProcessor
org.springframework.context.annotation.internalAutowiredAnnotationProcessor
org.springframework.context.annotation.internalRequiredAnnotationProcessor
org.springframework.context.annotation.internalCommonAnnotationProcessor
org.springframework.context.annotation.internalPersistenceAnnotationProcessor
org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor
org.springframework.context.annotation.ConfigurationClassPostProcessor.enhancedConfigurationProcessor

Main Application-Klasse Anmerkungen:

@ComponentScan(basePackages = "com.test")
@EnableAutoConfiguration(exclude = { MetricFilterAutoConfiguration.class, MetricRepositoryAutoConfiguration.class })
@EnableMongoRepositories("com.test.repository.mongodb")
@EnableJpaRepositories("com.test.repository.jpa")
@Profile(Constants.SPRING_PROFILE_DEVELOPMENT)
public class Application { ...

Daher sollte die überprüfung aller die spring bean im Paket com.test und laden Sie diese auch in der Datei ApplicationContext für die Junit testcase. Aber aus dem Ausgang der Bohnen initalised es scheint nicht zu sein, dies zu tun.

Für eine Sache, Ihre Anwendung Klasse ist nur dann aktiv, für ein Profil, das man die Einstellung nicht aktiv zu sein in der Prüfung.
Dank Steve Merkte.

InformationsquelleAutor Shivam Sinha | 2015-02-25

Schreibe einen Kommentar