"çok fazla fiili çağırmaları" ile başarısız kadar) (doğrulamak aşağıdadır:mockito) (doğrulamak ben eklemek çalışıyorum oldukça dahil deneme sürecindeyiz
verify(userService).getUserById(anyLong()).setPasswordChangeRequired(eq(Boolean.TRUE));
Bu, bu hata ile başarısız:
org.mockito.exceptions.verification.TooManyActualInvocations:
userService.getUserById(<any>);
Wanted 1 time:
-> at test.controllers.AuthenticationControllerMockTest.testLookupsExceeded(AuthenticationControllerMockTest.java:404)
But was 4 times. Undesired invocation:
Yani bu şekilde değiştirdim:
verify(userService, atLeastOnce()).getUserById(anyLong()).setPasswordChangeRequired(eq(Boolean.TRUE));
Ve şimdi başarısız:
java.lang.NullPointerException
at test.controllers.AuthenticationControllerMockTest.testLookupsExceeded(AuthenticationControllerMockTest.java:404)
bu çünkü dönüyor boş:
verify(userService, atLeastOnce()).getUserById(anyLong())
Bu şaşırtıcı görünüyor - Ben varsayılan (tek çağırma only) kullanırsanız, birden çok kez çağrılan ediliyor çünkü başarısız, ama o birden bunu söylesem Çağırmalar iyi, çünkü herhangi bir çağrı bulamadığı için başarısız oluyor!
Bu konuda yardımcı olabilecek herhangi biri var mı?
Belirli bir numarayı kullanarak denediniz mi? '(userService, times (4)) ...' –