How to configure integration tests in Spring Boot

integration-testing, java, spock, spring-boot

Solution

@ContextConfiguration(classes = Application, loader = SpringApplicationContextLoader)
class FooSpec extends Specification {

    @Autowired
    private CustomProperties customProperties;

    def "should read spring boot properties"() {

        when:
            def foo = customProperties.foo;
        then:
            foo
    }

}

I love Spock!

Update

As @gilad said, this is not needed in Spring Boot 1.3+

Problem

I'm using Spring Boot (packed to classic WAR without SpringBoot runner) and I'd like to implement integration tests in Spock. When I use `@ContextConfiguration(classes = MySpringConfiguration.class)` then only "standard" Spring context is used (without any benefits from Boot, like for example `@EnableConfigurationProperties`.

Original source