I'm more familiar with EasyMock than Mockito, so I had to do a little digging. Mockito has a page that does an explicit comparison from the Mockito point of view.
As I see it, the advantages of Mockito are:
- Explicit separation of stub and verification
- Matchers are based on Hamcrest (also supported by JUnit) instead of a custom API
- Created mocks are always 'nice'; that is, method calls that are unmocked return clean data (like an empty list) instead of failing
EasyMock has a very similar function set. The core differentiators for Mockito are based on those areas of EasyMock that the Mockito team thought were limitations or sub-optimal practices.
From a functional point of view, neither product is able to mock static methods (I needed to do this for testing without an MBeanServer), but in that case you can use PowerMock on top of either framework.
I'd say go with whichever style fits your testing requirements.
Hope this helps!