Курс 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. Профилирование с cProfile
  2. Компиляция регулярных выражений
  3. Создание новых функций с помощью functools.partial
  4. Lambda Functions in Python
  5. Метод setdefault() в Python
  6. Подсказки при вводе данных в Python
  7. Список импортированных модулей в Python
  8. Метод rpow в Python
  9. Создание OrderedDict
  10. Глобальные переменные в Python
  11. Множественные конструкторы в Python
  12. Функция с **kwargs в Python
  13. Python: отсутствие точек с запятыми
  14. Обновление и получение данных в SQLite
  15. Основы работы с базами данных в Python
  16. Создание и операции с дробями
  17. Работа с набором данных CIFAR10 в PyTorch
  18. Модуль math: константы π и e
  19. Разделение строки в Python
  20. Оформление текста в консоли с TermColor
  21. Запрос DELETE с библиотекой requests
  22. Создание новых списков в Python
  23. Работа со строками в Python.
  24. Срез в Python
  25. Оператор break в Python
  26. Управление доступом к модулю
  27. Работа с путями в Python
  28. Установка и использование библиотеки google
  29. Декораторы в Python
  30. Списковое включение в Python
  31. Определение локальных переменных в Python
  32. Навыки Python: строки, типы данных
  33. Хранение переменных в Python.
  34. Функция product() из itertools
  35. Оптимизация параметров в Python
  36. Создание таблиц в Python с PrettyTable
  37. Оптимизация памяти с помощью __slots__
  38. Создание GUI с Tkinter: Entry
  39. Генераторы списков в Python
  40. Эффективная конкатенация строк в Python
  41. Python: Фильтрация списков с помощью filter()
  42. Поиск индекса элемента в списке
  43. *args и **kwargs в Python
  44. Переменные в Python: сокращение гласных
  45. Проверка типов с использованием isinstance
  46. Объединение словарей в Python
  47. Анонимные функции в Python
  48. Работа с файлами в Python
  49. Перебор элементов списка в Python

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