Le due sintassi per lo stopbing sono approssimativamente equivalenti. Tuttavia, puoi sempre uso doReturn/when
per lo stopbing; Ma ci sono casi in cui tu Non posso uso when/thenReturn
. I metodi di vuoto di Stubing sono uno di questi. Altri includono l'uso con le spie mockito e lo stoping lo stesso metodo più di una volta.
Una cosa che when/thenReturn
ti dà, quello doReturn/when
Non è, è il controllo del valore del valore che stai restituendo, al momento della compilazione. Tuttavia, credo che questo abbia quasi nessun valore: se hai sbagliato il tipo, lo scoprirai non appena esegui il test.
Consiglio vivamente solo di usare doReturn/when
. Non ha senso imparare due sintassi quando si fa.
Potresti voler fare riferimento alla mia risposta a Formare "grammatiche" di mockito - Una risposta più dettagliata a una domanda molto strettamente correlata.