Я читал, что статические методы, статические классы и синглтоны - это зло, когда вы пытаетесь реализовать модульное тестирование в своем проекте. Следуя парадигме TDD, следует ли мне просто забыть, что они когда-либо существовали, и никогда не использовать их снова, или можно ли иногда их использовать?