PowerMock问题与扩展方法

时间:2012-01-16 16:12:01

标签: powermock

问题:无法在扩展类的返回对象上存根方法。我只是在我尝试存根的方法上得到空指针。我是否需要先对物体执行间谍活动?我也尝试过这个并没有奏效。

测试框架: 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);

1 个答案:

答案 0 :(得分:0)

我不知道EasyMock的语法,但我知道Mockito。我在这里没有太多工作,但似乎你只是想创建一个Stubbed Object来返回另一个返回字符串的Mock。

如果是,请创建模拟测试对象:

TestObject testObject = mock(TestObject.class);

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

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

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