写单元测试,早晚会需要mock,不然有的东西没法测。曾经在一年前,我试用过EasyMock,这个目前使用人数最多、好评也很多的mock库,可以让我们方便的mock一个接口或者一个类。
但是,还不够方便,虽然比我们自己写一个mock类方便很多,但是,总觉得还不够方便。
直到有一天,我看到了mockito,原来,mock还可以更简单。如果自己写mock的复杂度是10的话,使用easymock大约是4,而mockito应该是3。不要小看这一点点,这就是创造力,这就是方便。
两个缺点:
1. 只能使用jdk1.5以上,因为它的方便是用jdk1.5的泛型换来的
2. 不能mock “static method”,“final method”,“new”,这没办法,简单易用的mock库基本上都有这缺陷。
另一个专讲mock的有名网站:http://www.mockobjects.com,上面有各个语言的常用的mock库的链接