Sobes.tech
Back to questions
Junior — Middle
70

Каким образом можно проверить корректность работы с внешним API или сервисом в вашем приложении?

Answer from AI

sobes.tech AI

Для проверки корректности работы с внешним API в Python обычно применяют несколько подходов:

  • Мокирование запросов с помощью библиотек, например, unittest.mock или responses. Это позволяет имитировать ответы API без реальных сетевых вызовов, что ускоряет тесты и делает их стабильными.

  • Интеграционные тесты, которые делают реальные запросы к тестовой среде API, проверяя корректность взаимодействия.

  • Валидация ответов: проверка структуры и содержимого ответов (например, с помощью jsonschema), чтобы убедиться, что данные соответствуют ожиданиям.

Пример мокирования запроса с использованием requests и responses:

import requests
import responses

@responses.activate
def test_api_call():
    responses.add(responses.GET, 'https://api.example.com/data',
                  json={'key': 'value'}, status=200)

    resp = requests.get('https://api.example.com/data')
    assert resp.status_code == 200
    assert resp.json() == {'key': 'value'}