我们如何模拟在控制器中使用的公共变量,该变量从application.properties收集其静态值并在控制器中使用,我们需要使测试用例不允许加载application.properties上下文文件,因此我们如何模拟该变量,因此我们可以创建新的variable.properties并为测试用例加载该变量,也为控制器加载该变量,因此我们如何才能做到这一点呢?
忽略包含许多安全配置的主上下文文件是一个好方法。
我们如何模拟在控制器中使用的公共变量,该变量从application.properties收集其静态值并在控制器中使用,我们需要使测试用例不允许加载application.properties上下文文件,因此我们如何模拟该变量,因此我们可以创建新的variable.properties并为测试用例加载该变量,也为控制器加载该变量,因此我们如何才能做到这一点呢?
忽略包含许多安全配置的主上下文文件是一个好方法。
1条答案
按热度按时间0wi1tuuw1#
你需要的是spring profiles。
您可以创建一个单独的application.properties文件,该文件将仅用于测试,以使测试配置文件更准确。它应该被称为
application-test.yml
,并包含与原始文件相同的属性,但当然具有用于测试的值。然后,在测试类中定义了这个注解
@ActiveProfiles(value = "test")
的测试将使用这个文件。请使用this great guide快速轻松地设置可用于 Spring 测试的属性(配置文件)。