如何访问方法中声明的对象?

时间:2013-03-20 05:48:37

标签: java junit mockito powermock

如何使用powermock-mockito访问方法中声明的对象?

例如:

Class A 
{

private void method1()
{
  B b = new B();
  // This method returns nothing , and I have no intention to change it's return type or  //any other things.
}

}

Class B {

public B()
{

}

}

现在我正在编写调用此私有方法的测试用例,在我的测试用例中,我想获取在method1中创建的对象B的值。(PowerMock-Mockito)

1 个答案:

答案 0 :(得分:0)

您无法访问对象B,因为一旦执行该方法,其范围就结束了,如果没有更多的引用,它将可以进行垃圾回收。尝试在类级别声明变量并在方法中初始化。然后,您可以使用反射来获取对象。如果你正在使用spring ReflectionTestUtils是一个方便的类来实现这一点。