Es wird initializationError
geworfen. Ich benutze powermock 1.6.4 und javassist-3.20.0. Es scheint, ich kann mich nicht gleichzeitig in derselben Klasse verspotten und verspotten.PowerMock throw initializationError, wenn die statische Methode einer Klasse das gleiche Objekt einer Klasse zurückgibt
interface B
{
public static B getA()
{
return new B()
{
};
}
}
a test code is:
@PrepareForTest({B.class})
@Test
public void testB()
{
B a = mock(B.class);
mockStatic(B.class);
when(B.getA()).thenReturn(a);
}
Wo ist der Fehler geworfen? Bitte fügen Sie bei, was Sie bisher versucht haben, um dieses Problem zu lösen. – petryuno1
Es wird kein Fehler ausgegeben, weder Fehler noch Trace. Wenn ich eine BFactory und den Code wie folgt verwende: B a = mock (B.class); mockStatic (BFactory.class); when (BFactory.getA()). thenRturn (a); dann funktioniert es gut, aber ich möchte keine Fabrik nur für diesen Scheintest-Zweck hinzufügen. – user2201253