Курс 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. Метод setitem в Python
  2. Подсчет частотности элементов в Python
  3. Анализ кода — Python
  4. Конвертация коллекций в Python.
  5. Нахождение отличий в списках
  6. Проверка версии Python
  7. Метод pos в Python
  8. Декораторы в Python
  9. Замена символов в строке
  10. Списки в Python
  11. Python Поверхностное Копирование
  12. Разделение строки с помощью re.split()
  13. Копирование объектов в Python
  14. Отправка POST-запроса в REST API
  15. Метод rename() для переименования файлов и каталогов
  16. Частичное совпадение ввода
  17. Нахождение самого длинного слова в списке с помощью max
  18. Подробная информация о %pinfo
  19. Структура данных словарь в Python
  20. Возврат нескольких значений из функции
  21. Создание списков в Python
  22. Оператор Walrus в Python
  23. Множественное наследование в Python
  24. Генераторы в Python
  25. Метод rsub для пользовательских чисел
  26. Генераторы в Python
  27. Функции классификации комплексных чисел
  28. Получение списка кортежей из словаря
  29. Запуск внешних программ с subprocess
  30. Отладка утечек памяти в Python
  31. Переопределение метода __eq__
  32. Ускорение выполнения кода в Python
  33. Явный импорт переменных
  34. Присвоение значений переменным в Python
  35. Операторы сравнения в Python
  36. Декоратор total_ordering для сравнения объектов
  37. Применение функции к списку
  38. Приближение чисел в Python
  39. Обезопасьте ввод данных
  40. Установка виртуального окружения Python
  41. Счетчик ссылок в Python
  42. Вывод сложных структур данных с помощью pprint
  43. Определение функций с необязательными аргументами
  44. Работа с OpenCV
  45. Генератор списка с условием if
  46. Инициализация переменных
  47. Реверс строки и списка в Python.

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