Class to be tested
public class ClassUnderTest {
public void functionA() {
functionB();
functionC();
}
private void functionB() {
}
private void functionC() {
}
}
Test ClassPowerMock не проверяя личные звонки более чем один раз
@RunWith(PowerMockRunner.class)
public class TestClass {
@Test
public void testFunctionA() throws Exception {
ClassUnderTest classUnderTest = PowerMockito.spy(new ClassUnderTest());
classUnderTest.functionA();
PowerMockito.verifyPrivate(classUnderTest).invoke("functionB");
PowerMockito.verifyPrivate(classUnderTest).invoke("functionC");
}
}
При выполнении тестового класса я получаю следующее сообщение об ошибке,
org.mockito.exceptions.misusing.UnfinishedVerificationException:
Missing method call for verify(mock) here:
-> at org.powermock.api.mockito.PowerMockito.verifyPrivate(PowerMockito.java:312)
Example of correct verification:
verify(mock).doSomething()
Also, this error might show up because you verify either of: final/private/equals()/hashCode() methods.
Those methods *cannot* be stubbed/verified.
Mocking methods declared on non-public parent classes is not supported.
Если одна проверка комментируется то тестовая версия работает нормально.
Здравствуйте @bharanitharan, у вас есть какие-либо решения? У меня такая же проблема ... – Abdelhafid