Я думаю, что лучший подход состоял бы в том, чтобы изменить этот модульный тест, чтобы использовать patch в функции setUp
, а затем он будет применяться для всех тестов в этом модуле, но в конце будет возвращен, это также лучше, чем каждый тест будет иметь свой собственный, а не один макет для всех из них (если, например, вы проверяете количество времени, которое вы вызываете в модуле, вам придется накапливать все вызовы в тесте ...)
Другой опция должна использовать функцию tearDown
и немного изменить способ, которым вы назначаете макет:
import moduleABC
orig_abc = sys.modules['moduleABC']
sys.modules['moduleABC'] = mock.MagicMock()
def tearDown():
sys.modules['moduleABC'] = orig_abc
Но я настоятельно рекомендую первый вариант, так как это лучший подход.