问题:无法在扩展类的返回对象上存根方法。我只是在我尝试存根的方法上得到空指针。我是否需要先对物体执行间谍活动?我也尝试过这个并没有奏效。
测试框架: 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);
答案 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);