Spring JUnit在测试类中测试自动变量

时间:2013-10-10 12:40:01

标签: java spring junit dependency-injection

我想测试一个通过@Autowired注释注入资源的类。

class TestedClass{
  @Autowired
  private MyResource resource
  ...
}

如何在不修改测试类的情况下使此注入工作?注入在测试类中工作正常,但在测试类中没有:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations= "classpath*:/bean-definition.xml")
  public class TestedClassTest {
  TestedClass instance;

  //This works
  @Autowired
  private MyResource resource

  @Before
  public void setUp() throws Exception {
    instance = new TestedClass();
  }
...
}

所以问题可能是如何将上下文传递给测试类?

1 个答案:

答案 0 :(得分:1)

注入TestedClass不用new()创建,我假设它是一个bean。或者使用setter或构造函数将myResource注入到measuredClass中。