Итак, я читал блог тестирования Google, и он говорит, что глобальное состояние плохое и затрудняет запись тестов. Я считаю, что мой код трудно проверить прямо сейчас. Итак, как мне избежать глобального состояния?Как я могу избежать глобального состояния?
Самые большие вещи, которые я использую глобальное состояние (как я понимаю), - это управление ключевыми частями информации между нашей средой разработки, принятия и производства. Например, у меня есть статический класс с именем «Globals» со статическим членом, называемым «DBConnectionString». Когда приложение загружается, он определяет, какую строку подключения загружать, и заполняет Globals.DBConnectionString. Я загружаю пути к файлам, имена серверов и другую информацию в классе Globals.
Некоторые из моих функций зависят от глобальных переменных. Поэтому, когда я проверяю свои функции, я должен помнить, что сначала нужно установить определенные глобальные переменные, иначе тесты потерпят неудачу. Я бы хотел этого избежать.
Есть ли способ управлять информацией о состоянии? (Или я неправильно понимаю глобальное состояние?)