我的测试课:

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是一个
  接口有一定的方法..
  我已经用那个标记了beanClass
  @Service("beanObject")
  注释..banClass是
  由beanClassImpl类实现
  其中具有方法的实现。
  我需要在其中使用这些实现
  我的testClass来获取数据
  比较..为此,我在做
  @Autowired beanClass中的beanObject
  我的testClass ..我走得很厉害
  哪里不对?

最佳答案

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

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


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

参考:TestContext support classes

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


  简而言之。beanClass是一个
  接口有一定的方法..
  我已经用那个标记了beanClass
  @Service(“ beanObject”)
  注释..banClass是
  由beanClassImpl类实现
  其中具有方法的实现。
  我需要在其中使用这些实现
  我的testClass来获取数据
  比较..为此,我在做
  我的@Autowired beanClass beanObject
  testClass ..我走错了
  某处?


更多更新:

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

09-25 19:08