Las dos sintaxis para los trozos son aproximadamente equivalentes. Sin embargo, puedes siempre usar doReturn/when
por trozos; Pero hay casos en los que tu no poder usar when/thenReturn
. Los métodos de vacío de trozo son uno de estos. Otros incluyen el uso con Spies Mockito y retirar el mismo método más de una vez.
Una cosa que when/thenReturn
te da que doReturn/when
No lo hace, es comprobación de tipo del valor que está devolviendo, en el momento de la compilación. Sin embargo, creo que esto es casi sin valor: si tiene el tipo incorrecto, lo descubrirá tan pronto como ejecute su prueba.
Recomiendo encarecidamente solo usar doReturn/when
. No tiene sentido aprender dos sintaxis cuando uno lo hará.
Es posible que desee consultar mi respuesta en Formando Mockito "Gramáticas" - Una respuesta más detallada a una pregunta muy relacionada.