mockObject.setProperty在PowerMockito中不起作用

时间:2014-09-11 16:19:33

标签: java unit-testing mockito

我有一个代码:

A a = someOtherObject.someMethod();
if(null != a)
{
   if(a.getPropertyOfA().equals("testValue"))
   {
       //some code

这是方法的一部分。

现在使用powerMockito,当我尝试创建一个testCase时, 我写了以下代码片段:

A a = PowerMockito.mock(A.class);
a.setPropertyOfA("testValue");
//some other code

但是在运行代码时, 在JUnit运行期间,该属性的值显示为null。为什么Property值没有设置为我在测试类中设置的值?

我是否必须实例化对象,而不是嘲笑它?

该方法的someMethod()方法调用是否导致任何错误?

1 个答案:

答案 0 :(得分:0)

如果您的代码是这样的,那么您首先模拟A.然后给它一个行为。

A mockA = mock(A.class);
when(mockA.getPropertyOfa()).thenReturn("testValue");

因此,当您为A属性调用A实例时,它将返回“testValue”。