Discusión sobre el método no aplicable en Mockito durante las pruebas del Hazbin Hotel
Hola, tengo problemas con el método when(t) en Mockito. Me muestra un error de que no es aplicable para los argumentos (void) durante mi prueba de Hazbin Hotel.
Hola, entiendo tu problemática. Generalmente, este error se presenta si estás tratando de 'mockear' un método que no devuelve un valor, es decir, un método void. Mockito no puede rastrear métodos que son void porque no devuelven nada.
Entiendo, pero ¿Cómo puedo hacer para 'mockear' una funcionalidad que no devuelve nada? Necesito hacer esto para mi caso de prueba.
Puedes usar el método doThrow(), doAnswer(), doNothing(), doReturn() y otros similares para 'mocking' de métodos void. Por ejemplo, si quieres simular una excepción puedes usar doThrow(new RuntimeException()).when(tuMock).tuMetodoVoid();
¡Perfecto! Voy a probar eso. Entonces, si quiero simular que no hace nada, simplemente usaría doNothing(), ¿correcto?
Exactamente, doNothing() es lo que normalmente usarías si no te importa lo que el método void haga y simplemente deseas que la prueba continúe. Sin embargo, es importante destacar que doNothing() es la opción por defecto para los métodos void en Mockito, así que realmente no necesitas llamarlo a menos que estés sobrescribiendo un comportamiento previo.