Встречается на собеседованиях • сегодня
Как проверить, что код правильно взаимодействует с внешним сервисом
Для проверки взаимодействия с внешним сервисом используйте моки (mock-объекты) и стабы в тестах. Библиотека unittest.mock позволяет подменять реальные вызовы на тестовые заглушки.
Пример:
python
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')
text
**Ключевые моменты:**
1. Используйте `patch` для подмены HTTP-запросов.
2. Проверяйте, что мок вызывается с правильными аргументами (`assert_called_with`).
3. Тестируйте обработку ошибок (например, `requests.Timeout`).
4. Для интеграционных тестов можно поднимать тестовый сервер (например, `pytest-httpserver`).
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы