[英]@Autowired annotation not able to inject bean in JUnit class
我的测试课:
public class myTest extends TestCase{
@Autowired
BeanClass beanObject
public void beanTest()
{
Classdata data = beanObject.getMethod();
}
}
我在行上得到一个空指针异常:
Classdata data = beanObject.getMethod();
beanObject.getMethod();
精确给出nullpointer异常
如何使Junit类中的beanObject字段自动装配成为可能,以便可以使用“ 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
注释接口无效!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.