gpt4 book ai didi

spring-boot - 使用不同的属性执行相同的@SpringBootTest

转载 作者:行者123 更新时间:2023-12-04 13:03:08 26 4
gpt4 key购买 nike

我有一个 @SpringBootTest 用于在服务器上执行集成测试。根据配置,我希望服务器的行为有所不同。配置本身由我的应用程序逻辑深处的 beans (scope = singleton) 读取,它们通过 @Value 注释读取属性。

如何使用不同的配置设置执行相同的测试?我尝试编写不同的测试类并使用@TestPropertySource(properties = XYZ) 对其进行注释。但这似乎也会影响所有其他测试(由于单例范围?)。有没有办法在测试后重置属性?

重新指定我的问题:我想在我的测试期间使用不同的 @Value 属性配置我的 bean,并且这个值应该只在这个特定的测试执行过程中有效。

提前感谢您的任何指点。

最佳答案

我有一个网络服务,它通过使用配置中的属性连接到其他网络服务的客户端。与任何组织一样,我们有不同的环境。对于测试,我想点击测试环境而不是本地。这就是我仅为集成测试覆盖默认属性值的方式。通过这样做,我可以点击测试环境而不是默认的本地环境。

@SpringBootTest(value = {"eureka.client.enabled=false", // Don't start Eureka
"com.somepackage.webservicename.client.serviceUrl = http://nodename.envname:26730"})

希望这可以帮助!

关于spring-boot - 使用不同的属性执行相同的@SpringBootTest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49198769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com