@SpringBootTest的问题:上下文没有加载,Spock无法@Autowire

时间:2016-08-04 10:04:53

标签: spring spring-boot spock spring-test

我刚刚转到Spring Boot 1.4.0以使用新的测试功能。但是,我似乎无法将它们与Spock Framework结合使用。请考虑以下规范:

<div class="highcharts-container" id="highcharts-0"</div>

问题是注释似乎甚至无法找到@SpringBootTest(classes=[MainWebApplication.class], webEnvironment =SpringBootTest.WebEnvironment.RANDOM_PORT) class RestTemplateExampleSpec extends Specification{ @Autowired private TestRestTemplate restTemplate def "Web application is Reachable and Status is 200 - OK"(){ when: "The root address is called" def response = restTemplate.getForObject("/", String.class) then: "The status code is 200 - OK" response.statusCode == HttpStatus.OK } def "Endpoint /admin/users is available"(){ when: "/admin/users is called" def response = restTemplate.getForEntity("/admin/users", String.class) then: "The status code is 200 - OK" response.statusCode == HttpStatus.OK } } (坐在层次结构中更高的包上),因此,没有上下文,所以{{1}没有任何内容}。我知道这是一个很新的东西,但到目前为止的文档并不是很好,所以可能这个问题也会对其他人有所帮助。

1 个答案:

答案 0 :(得分:3)

当前版本的Spock与Spring Boot 1.4的@SpringBootTest注释不兼容,如果您希望使用新注释,则应将Spock版本升级到1.1。

有关详细信息,请参阅this answer