@iamsteveholmes: Because the state of the singleton is global. Meaning it changes everytime a test calls a method on it. To encapsulate the tests I would have to reset the singleton instead of just creating a new fresh instance which a singleton doesn't allow.