Мой код используется в некоторых системах, в которых отсутствуют определенные модули Python (например, yaml ,asticsearch).
Я хочу написать модульный тест, чтобы убедиться, что код все еще выполняется, если эти модули не работают.имеется в наличии.
Могу ли я использовать mock для имитации ошибки ImportError, если какой-либо из этих модулей импортируется?
Полагаю, я представляю себе что-то подобное:
import mock
import unittest
class TestMyTool(unittest.TestCase):
@mock.error_on_import(['yaml', 'elasticsearch'])
def test(self):
with self.assertRaises(ImportError):
import yaml
with self.assertRaises(ImportError):
import elasticsearch