Курс Python → Тестирование с responses

Библиотека responses в Python представляет собой инструмент, который позволяет разработчикам генерировать и анализировать ответы на запросы. В отличие от библиотеки requests, которая используется для отправки HTTP-запросов, responses специализируется на создании фейковых ответов для тестирования приложений. Это полезный инструмент для проверки поведения вашего приложения при различных сценариях взаимодействия с внешними сервисами.

Основной целью использования библиотеки responses является создание симулированных ответов от сервера без необходимости настройки реального внешнего сервиса. Это позволяет разработчикам удобно тестировать обработку различных HTTP-ответов, статусов кодов и заголовков в их приложениях. Таким образом, можно убедиться, что приложение корректно обрабатывает разнообразные сценарии взаимодействия с внешними сервисами.

import responses

@responses.activate
def test_my_api():
    responses.add(responses.GET, 'https://api.example.com', json={'key': 'value'}, status=200)
    response = requests.get('https://api.example.com')
    assert response.json() == {'key': 'value'}

Приведенный выше пример демонстрирует как можно использовать библиотеку responses для тестирования API. Мы активируем responses, добавляем фейковый ответ на GET-запрос к определенному URL, отправляем реальный запрос с помощью библиотеки requests и проверяем, что полученный ответ соответствует ожидаемому значению. Такой подход позволяет эффективно проверить работу вашего приложения при взаимодействии с внешними сервисами.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Поиск подстроки в строке
  2. globals и locals
  3. Генерация фальшивых данных с Faker
  4. Нахождение отличий в списках
  5. Метод __iand__ для пользовательских классов
  6. Обучение модели с указанием эпох
  7. Работа с асинхронными задачами в Python
  8. Работа с атрибутом dict
  9. Enum в Python
  10. Python-dateutil — работа с датами
  11. Подписка на @SelectelNews
  12. Библиотека sh: использование команд bash в Python
  13. Повторение элементов в Python
  14. Удаление элементов из списка в Python
  15. Оператор обр. импликации
  16. Работа с timedelta в Python
  17. Метод rpow в Python
  18. Назначение максимального и минимального значения переменной в Python.
  19. Профилирование с Pandas
  20. Генератор списка с условием if
  21. Получение текущего времени в Python
  22. Метод join() для объединения элементов
  23. Применение промокода в Много лосося
  24. Работа с файлами в Python
  25. Функция enumerate() — Python
  26. Комментарии в Python.
  27. Строки в Python: апострофы и кавычки
  28. Базовые объекты Python
  29. Измерение времени выполнения кода
  30. Разность множеств
  31. Обработка данных в Python
  32. Циклы в Python
  33. Основные функции и модули Python
  34. Присоединение элементов коллекции
  35. Создание пользовательской коллекции в Python
  36. Рекурсия для обращения строки
  37. Лямбда-функции для min/max
  38. Инверсия списка и строки в Python
  39. Присвоение и ссылки
  40. Генераторы данных
  41. Метод get для словаря
  42. Капитализация строк
  43. Замеры производительности в Python
  44. Создание класса очереди
  45. Изучение объектов с помощью dir()

Marketello читают маркетологи из крутых компаний