@Autowired注释无法在JUnit类中注入bean

我的考试class:

public class myTest extends TestCase{ @Autowired BeanClass beanObject public void beanTest() { Classdata data = beanObject.getMethod(); } } 

我在行处获得空指针exception:

 Classdata data = beanObject.getMethod(); 

beanObject.getMethod(); 精确地给出了nullpointerexception

我应该如何使我的Junit类中的字段beanObject自动assembly,以便我可以使用“BeanClass”类中的方法?


复制自评论:

简单来说.. beanClass是一个具有某些方法的接口..我用@Service("beanObject")注释标记了beanClass .. banClass是由beanClassImpl类实现的,它具有方法实现..我需要使用那些我的testClass中的实现来获取要比较的数据..因为我正在我的testClass中执行@Autowired beanClass beanObject .. mi在某处非常错误?

您可能需要使用以下注释来装饰测试:

 @ContextConfiguration(locations = {/* your xml locations here */}) @RunWith(SpringJUnit4ClassRunner.class) 

或者,如果您使用JUnit 3.x,则应从AbstractJUnit38SpringContextTests扩展

参考: TestContext支持类

更新:问题似乎是无法找到上下文文件(请参阅注释中的讨论)。

简单来说.. beanClass是一个具有某些方法的接口..我用@Service(“beanObject”)注释标记了beanClass .. banClass是由beanClassImpl类实现的,它具有方法实现..我需要使用那些我的testClass中的实现来获取要比较的数据..因为我正在我的testClass中执行@Autowired beanClass beanObject .. mi在某处非常错误?

更多更新:

不要注释接口,注释实现类。 使用@Service注释接口无效!