我试图对一个覆盖它的抽象类的toString方法进行存根,并使其成为最终的:
public abstract class ExampleClass
{
private String someClassProperty;
public final String toString()
{
return this.someClassProperty;
}
}
问题在于,当我将其存根时,通常使用以下代码完成:
ExampleClass mock = mock(ExampleClass.class);
when(mock.toString()).thenReturn("myString");
在运行时,当Powermock在模拟器上进行存根时会抛出一个NPE:
Method threw 'java.lang.NullPointerException' exception. Cannot evaluate ExampleClass$$EnhancerByMockitoWithCGLIB$$.toString()
我已将ExampleClass放在@PrepareForTest注释中。因此,有人知道在最终方法的存根中存在什么问题,如果我在某处犯了错误。感谢。