java - Spring Boot 自动装配配置类进入 Junit 测试
问题描述
我目前在 Spring Boot 中遇到了 Junit 测试的问题。我有一个@Configuration
要测试@Bean
方法的类。因为这些方法在测试期间会被跳过,所以我将配置方法的内容提取到一个受保护的方法中,然后@Bean
在类的方法中调用该方法@Configuration
。我这样做是为了测试这些方法的行为。在此方法中,不同@ConfigurationProperties
的是用于加载一些设置。
现在,在我的ConfigurationTest
课堂上,我正在模拟这些ConfigurationProperties
类,以便测试该@Bean
方法的正确行为。
我的问题是,ConfigurationProperties
当我在@Bean
方法内部(更具体地说,在从 @Bean 方法调用的受保护方法内部)时,我的类的 Mockito 模拟总是返回 null。感觉我的课程设置方式有问题@Configuration
。目前我正在自动装配它。
我现在的问题是,如何@Configuration
正确设置类,以便调用它的函数并模拟使用的@ConfigurationProperties
类的返回值?
提前致谢!
解决方案
添加@EnableConfigurationProperties(value=YourConfigurationProperties.class)
到您的测试类。这将加载属性。