2012-06-18 22 views
8

He creado un objeto de simulación utilizando EasyMock, y estoy intentando que el objeto devuelva otro objeto después de una llamada a un método. La llamada a método no causa ninguna excepción, pero devuelve nulo, aunque estoy seguro de que la llamada andReturn() tenía un argumento no nulo.EasyMock andReturn() valor de retorno nulo

Respuesta

15

El problema aquí es que no he llamado replay() en el objeto de simulación después de especificar el comportamiento. Por alguna razón, esto le permitió permitir algunos de los comportamientos esperados, pero siempre devuelve nulo para cuando se esperaba un valor de retorno. Recuerde llamar al replay() antes de usar el simulacro.

+2

tenga en cuenta también que cuando acaba de decir 'yVolver()' eso solo es bueno para una llamada del método de burlarse. Puede especificar la cantidad de llamadas a las que desea devolver el valor de uso, por ejemplo, 'yReturn (...). AnyTimes()' – grinch

Cuestiones relacionadas