0
我想在春季测试注入依赖性。集成测试:测试Autowired注释
我有一个类:
public SomeClass {
@Autowired
SomeBean bean ;
public SomeBean getBean(){
return this.bean ;
}
}
我想这样的测试:
public SomeClassTest {
SomeClass someClass ;
@Before
public void setUp(){
someClass = new SomeClass() ;
}
@Test public testBeanWired(){
assertNotNull(someClass.getBean()) ;
}
}
我试图用一个测试配置文件ContextConfiguration,但测试失败,我不不想在测试中使用@Autowired,我想创建我的类的实例,并且这个bean是自动装配的。
这就是我想测试的是容器在做它的工作吗?我有我的测试的上下文配置文件,其中声明了bean,我希望当我的类被实例化时,要注入的bean,在测试中。 – elaich 2013-03-25 23:02:26
容器的工作是自动装载容器实例化的bean。你正在测试它是否自动装载你实例化的bean。所以测试会失败。不是因为容器没有完成它的工作,而是因为你使用new而不是从Spring上下文获取bean实例。 – 2013-03-25 23:05:43
mmmmm的权利,所以我只需要标记'@Autowired SomeClass someClass'并且测试会通过,而且它会通过。 – elaich 2013-03-25 23:11:56