我正在测试我的多模块spring boot项目中的一个模块。
我正在对标注为@Configuration的类进行单元测试。有一种使用使用@Autowired注入的类的方法。在JUnit测试期间,我得到了一个NullPointer,因为自动接线无法正常工作。如何运作?
应用程序运行正常,我的问题仅发生在JUnit测试上。
我尝试了其他答案中的一些注释
@RunWith(SpringRunner.class)
@ContextConfiguration(classes = {BasicConfiguration.class, SomeClass.class})
@TestPropertySource(locations= "classpath:applicationTest-configs-ok.properties")
public class BasicConfigurationTest {
@Autowired
BasicConfiguration basicConfig;
@Configuration
public class BasicConfiguration {
@Autowired
private SomeClass someClass ; <--- this is not working
@Bean
AnotherClass someMethod(){
return someClass.doSomething(); <--- nullpointer
}
@Component
SomeClass {
@Value("${test.param}")) <--- defined in applicationTest-configs-ok.properties
String myParam;
}
someClass应该被注入
答案 0 :(得分:1)
上面的示例在起作用,问题出在我犯一些错误的地方。
我不好。