В тестах может потребоваться изменить значения глобальных переменных. Это попахивает, но система может быть устроена так, что так сделать надо.
Состояние системы меняется в зависимости от порядка выполнения тестов (недопустимо!), если тесты не убирают за собой. От этого ломаются посторонние тесты, попадающие в неожиданное состояние системы.
Тесты могут выполняться в разном порядке (сюрприз!). У разработчика тесты могут быть зелёными, т.к. выполнялись строго последовательно. Но при Continuous Integration тесты могут запускаться в параллель, приводя к тому, что начинают краснеть тесты, которые рассчитывали на глобальные значения, которые поменялись в предыдущих тестах.
После выполнения тест обязательно должен вернуть значения к исходным. Иначе тест может повести себя иначе при следующем запуске или может повлиять на другие тесты, которые рассчитывают на значения по умолчанию. Идеально - избавиться от глобального состояния.