Question: why spy is used in mockito?
Answer: Mockito. spy() is a recommended way of creating partial mocks. The reason is it guarantees real methods are called against correctly constructed object because you're responsible for constructing the object passed to spy() method. Spy can be useful when you want to create unit tests for legacy code.