Spring Boot Integration Test中的H2控制台

时间:2016-02-02 20:03:45

标签: java spring-boot h2

我正在使用Spring Boot IMultiValueConverter。我通过在1.3.1.RELEASE文件中设置spring.h2.console.enabled=true来启用H2 Web控制台。如果我启动Spring Boot应用程序,我可以通过application.properties访问H2 Web控制台。

但是,当我在调试模式下执行集成测试时,我无法访问控制台,我在其中设置了断点。不幸的是,这不起作用(网站不可用)。集成测试配置如下:

http://localhost:8080/h2-console/

我没有考虑过什么?

1 个答案:

答案 0 :(得分:3)

要启用H2 Web控制台,您应该将与此项目相关的属性文件的值作为注释@IntegrationTest的可选元素进行重新聚合。

的字符串[]值 表单key=value中的属性,应在测试运行之前添加到Spring环境中。

示例:

@IntegrationTest({"spring.h2.console.enabled=true"})

请记住这个推荐:

  

如果您的测试也使用@WebAppConfiguration,请考虑使用   @WebIntegrationTest而不是@IntegrationTest

因此,请尝试使用@WebIntegrationTest代替@IntegrationTest并添加密钥spring.h2.console.enabled = true

http://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/test/IntegrationTest.html

http://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/test/WebIntegrationTest.html

也许您可能需要添加密钥“server.port = 8080”作为注释的另一个值@WebIntegrationTest