Yet other discussion of Stubs, Fakes, and Mock Objects - http://vladimirlevin.blogspot.com/2007/11/stubs-fakes-mocks.html http://www.sustainabletdd.com/2012/05/mock-objects-part-1.html While reviewing this article, Marty Andrews pointed out an important insight: there are two ways to use a mock object, either as a testing technique or as a design technique, and the intended use helps shape the available choices. http://www.onjava.com/lpt/a/4526 Someone post some arguement that using mock probably a bad idea , which look like a endless arguement... - http://jroller.com/page/alexRuiz?entry=mocks_for_concrete_class_can Alberto Savoia on Testing the Untestable, raise a point that mocking make testing more portable, it probably true, but database setup may be not that difficult to port. - http://www.artima.com/forums/flat.jsp?forum=276&thread=213402 http://gojko.net/2009/09/21/mocks-are-not-about-isolation-but-about-responsibilities/ http://blog.objectmentor.com/articles/2009/10/28/manual-mocking-resisting-the-invasion-of-dots-and-parentheses Fakes should have their own tests - http://googletesting.blogspot.com.au/2013/06/testing-on-toilet-fake-your-way-to.html http://lkrnac.net/blog/2014/01/18/mock-final-class/ Again, other post on pros and cons for difference approach - https://codurance.com/2019/04/08/Introduction-to-test-doubles/