Jestem zdezorientowany co do celu i różnicy między oczekiwaniami a weryfikacjami. Na przykład.Czy oczekiwania są niepotrzebne, jeśli w moim teście są weryfikacje?
@Tested FooServiceImpl fooService;
@Injectable FooDao fooDao;
@Test
public void callsFooDaoDelete() throws Exception {
new Expectations() {{
fooDao.delete(withEqual(1L)); times = 1;
}};
fooService.delete(1L);
new Verifications() {{
Long id;
fooDao.delete(id = withCapture()); times = 1;
Assert.assertEquals(1L, id);
}};
}
Przede wszystkim proszę dać mi znać, jeśli ten test jest źle napisany/przemyślany.
Po drugie, moje pytanie: sekcja oczekiwań wydaje mi się zbędna i nie mogę wymyślić przykładu, w którym nie byłoby.
Zmieniłem tytuł, aby lepiej odzwierciedlić swoje pytanie na dole strony. Jeśli źle zrozumiałem to pytanie, możesz cofnąć moją zmianę. – Thunderforge
Stary wątek, wiem, ale moje zrozumienie jest luźno i zwięźle: blok "oczekiwań" zajmuje się rzeczami, które mogą się wydarzyć; blok "Weryfikacja" zajmuje się rzeczami, które musiały się wydarzyć. –