sin*_*ity 12 spring spring-boot
我们在Spring Boot应用程序中使用bootstrap.properties来配置Spring Cloud Config相关属性.
我们希望在测试期间忽略这些属性,因为我们不想连接到配置服务器进行单元测试.因此,我们正在寻找一种从main完全撤消属性的方法,bootstrap.properties并提供一个新的方法来测试或覆盖选择性属性.
我们试图与创造src/test/resources/bootstrap.properties,src/test/resources/bootstrap-test.properties与spring.cloud.config.enabled=false财产,但没有奏效.
我们尝试在启动TestClass之前设置如下
static {
System.setProperty("spring.cloud.config.enabled", "false");
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.
虽然Spring Boot文档非常适合application.properties如何工作,但我找不到一个引用bootstrap.properties.
bootstrap.properties在测试期间以可靠的方式覆盖任何帮助都非常受欢迎.
Dou*_*oug 21
如果您使用的是@SpringBootTest注释,则可以bootstrap.properties使用以下内容覆盖以下属性:
@SpringBootTest(properties = "spring.cloud.config.enabled=false")
Run Code Online (Sandbox Code Playgroud)
否则,您可以:
@ActiveProfiles('test')到您的测试类bootstrap-test.propertiesspring.cloud.config.enabled=false更新:如果要为所有测试禁用spring cloud配置,只需使用以下属性bootstrap.properties在test/resources文件夹内创建:
spring.cloud.config.enabled=false
(在这里回答我自己的问题)
经过大量的尝试和错误发现,通过设置弹簧配置文件,test它实际上选择bootstrap-test.properties并与主bootstrap.properties文件组合.
在这种情况下,设置spring.cloud.config.enabled=false仍在尝试引导,就像它设置的主引导程序一样,spring.cloud.config.server.bootstrap = true所以我们必须将此属性设置为false,bootstrap-test.properties以完全处于非活动云服务器.
希望这有助于某人.
| 归档时间: |
|
| 查看次数: |
9645 次 |
| 最近记录: |