Я пытаюсь использовать PowerMock для насмешки стороннего кода, и у меня возникла проблема с расширенным методом.
Поэтому я дам фрагмент, показывающий, что происходит.
ClassA extends ClassB{
super();
}
ClassB extends ClassC{
super();
}
ClassC {
String methodA();
}
Теперь я пытаюсь смоделировать ClassA, поскольку это то, что использует мой код.Макет создает нормально, однако, когда я добавляю ожидание, например, так:
expect(mockClassA.methodA()).andReturn("string");
я получаю следующую ошибку:
java.lang.IllegalStateException: отсутствует определение поведения для предыдущеговызов метода methodA () в org.easymock.internal.MockInvocationHandler.invoke (MockInvocationHandler.java:43) в org.powermock.api.easymock.internal.invocationcontrol.EasyMockMethodInvocationControl.invockont.Mo.core.MockGateway.doMethodCall (MockGateway.java:104) в org.powermock.core.MockGateway.methodCall (MockGateway.java:167) в .ClassC.methodA (ClassC.java)
Любые мыслина что мне не хватает?Я знаю, что не включил много подробностей, но я подготовил ClassA для тестирования с использованием нотации, я также поместил воспроизведение только в одном месте, чтобы убедиться, что я неправильно устанавливаю mockClassA в неправильное состояние перед установкой ожидания.