0

问题:无法在扩展类的返回对象上存根方法。我只是在我试图存根的方法上获得空指针。我需要先对对象进行间谍活动吗?我也试过了,但没有用。

测试框架:PowerMockito 1.9 版 PowerMock 1.4.11 版 EasyMock 3.1 版

尝试测试的代码行。

String expected = methodFromExtendedClass_GetObject().getStringValueFromReturnObject();

测试代码

PowerMockito.stub(MemberModifier.method(ExtendedClassA.class, "methodFromExtendedClass_GetObject()")).toReturn(new testObject());

PowerMockito.stub(MemberModifier.method(testObject.class, "getStringValueFromReturnObject")).toReturn(testString);

4

1 回答 1

0

我不知道 EasyMock 语法,但我知道 Mockito。我在这里没有太多工作要做,但您似乎只是想创建一个存根对象来返回另一个返回字符串的 Mock。

如果是这样,请创建 Mock 测试对象:

TestObject testObject = mock(TestObject.class);

when(testObject.getStringValueFromReturnObject()).thenReturn(testString);

然后使用该 Mock 作为您的存根的回报:

PowerMockito.stub(MemberModifier.method(ExtendedClassA.class, 
           "methodFromExtendedClass_GetObject()")).toReturn(testObject);
于 2012-01-20T23:45:26.693 回答