Если unit-тест вызывает сторонний ресурс, какие действия предпринять

Python Senior Без компании
Если unit-тест вызывает сторонний ресурс, какие действия предпринять
Ответы
Для изоляции тестов от сторонних ресурсов используйте моки (mock objects) или патчинг (patching). Это позволяет эмулировать поведение внешних зависимостей без реальных вызовов. **Пример с `unittest.mock`:** ``` from unittest.mock import patch import requests def fetch_data(): response = requests.get('https://api.example.com/data') return response.json() # Тест с моком @patch('requests.get') def test_fetch_data(mock_get): mock_get.return_value.json.return_value = {'key': 'value'} result = fetch_data() assert result == {'key': 'value'} mock_get.assert_called_once_with('https://api.example.com/data') ``` **Альтернативы:** - Используйте библиотеки типа `responses` для HTTP-запросов. - Для сложных сценариев применяйте фикстуры (fixtures) или заглушки (stubs). Это обеспечит скорость, надежность и независимость тестов.