2012-06-18 37 views
8

我已经使用EasyMock构建了一个模拟对象,并且我试图在方法调用后返回另一个对象。方法调用不会引发任何异常,但它会返回null,但我确定andReturn()调用具有非空参数。EasyMock andReturn()null返回值

回答

15

这里的问题是我没有在指定行为后在模拟对象上调用replay()。出于某种原因,这导致它允许一些预期的行为,但当预期返回值时总是返回null。请记住在使用模拟前先致电replay()

+2

还要注意,当你只是说'和返回()',这只适用于模拟方法的一个调用。您可以指定想要返回值的调用次数,例如'andReturn(...)。anyTimes()' – grinch