It has long been understood that global state within an application will wreak havoc on a system and cause unexpected behavior that is difficult to trace. Changing the code in one place will possibly have far-reaching side-effects on the rest of your system. For testability, this often means much more effort in setup and slower test execution.