加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-15 01:46:24 所属栏目:大数据 来源:网络整理
导读:我刚刚转到Spring Boot 1.4.0来使用新的测试功能.但是,我似乎无法将它们与Spock Framework结合使用.请考虑以下规范: @SpringBootTest(classes=[MainWebApplication.class],webEnvironment =SpringBootTest.WebEnvironment.RANDOM_PORT)class RestTemplateEx

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

@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

    }

}

问题是注释似乎甚至无法找到MainWebApplication.class(坐在层次结构中更高的包上),因此,没有上下文,因此没有Autowire.我意识到这是一个非常新的东西,但到目前为止的文档并不是很好,所以可能这个问题也会对其他人有所帮助.

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读