Курс 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. Деление в Python
  2. Разница между датами
  3. Преобразование данных в Python
  4. Операторы += в Python
  5. Список и кортеж в Python
  6. Взаимодействие с sys
  7. Лимиты на ресурсы Python
  8. Работа с файловой системой в Python
  9. Лямбда-функции в Python
  10. Работа с Path в Python
  11. Beautiful Soup — извлечение данных из HTML
  12. Удаление и повторная вставка ключа в OrderedDict
  13. Область видимости переменных
  14. Объединение словарей в Python 3.5+
  15. Удаление файлов с shutil.os.remove()
  16. Сортировка с параметром key
  17. Генерация QR-кодов с Python
  18. Enum в Python
  19. Работа с изображениями PIL
  20. Добавление Progressbar в Python
  21. Функции all и any в Python
  22. Печать календаря в Python
  23. Переопределение метода __pow__
  24. Секреты Python
  25. Проверка на палиндром
  26. Перезагрузка оператора в Python
  27. Печать списка с помощью метода join
  28. Progress с библиотекой tqdm
  29. Извлечение аудио из видео
  30. ROT13 Шифр Цезаря в Python
  31. Изучение объектов с помощью dir()
  32. Оператор «моржа» (Walrus Operator)
  33. Перевод текста с Python Translator
  34. Делегирование в Python
  35. Экспорт функций в Python
  36. Группы исключений в Python
  37. Библиотека Emoji: использование смайлов в Python
  38. Скачать видео с YouTube
  39. Подсказки при вводе данных в Python
  40. Вывод с переменной через запятую
  41. Метаклассы в Python
  42. Извлечение чисел из текста
  43. Возврат нескольких значений из функции
  44. Тестирование с responses
  45. Основные методы NumPy

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