简单好用的mockito

Mockito是我见过的,在java和groovy中最轻松的一个mock框架,他还是用java写的。

  • 1.我讨厌要强制写expect调用次数的情况,mockito把这个当做了可选的步骤。如果你认为真的需要,可以在最后判定一下是否调用了N次
  • 2.我只是简单的想mock一个已有对象的个别方法而已,其他的仍然调用他自身的逻辑。mockito提供了Mockito.spy(myobject)方法得到一个新的符合要求的对象
  • 3.通过调用它的api,我可以大概猜到这里面都干了些什么;调用api要很简单。Mockito的api简单,而且符合预期思路:mock一个对象,当调用什么的时候返回什么,然后这个对象就可以随便扔到其他地方用了。看见replay后面跟个闭包的方式,觉得那些调用者真让人心疼。

以下是示例代码:

def mockedUser = Mockito.spy(user)
Mockito.when(mockedUser.getAccount).thenReturn(account)
userService.checkAccount(mockedUser)