Инструменты разработки
Модули, описанные в этой главе, помогут вам писать программное обеспечение. Например, модуль pydoc принимает модуль и генерирует документацию на основе его содержимого. Модули doctest и unittest содержат фреймворки для написания юнит-тестов, которые автоматически проверяют код и подтверждают, что полученный результат соответствует ожидаемому. 2to3 может преобразовать исходный код Python 2.x в корректный код Python 3.x.
Список модулей, описанных в этой главе:
-
typing— Поддержка типов подсказок pydoc— Генератор документации и система онлайн-справки-
doctest— Тестирование интерактивных примеров Python -
unittest— Фреймворк для юнит-тестирования -
unittest.mock— Библиотека объектов-заглушек
-
unittest.mock— начало работы-
Использование Mock
- Замена методов с помощью Mock
- Использование Mock для вызовов методов объекта
- Моделирование классов
- Называние ваших подстановок
- Отслеживание всех вызовов
- Установка возвращаемых значений и атрибутов
- Выбрасывание исключений с помощью подстановок
- Функции и итерируемые объекты с побочными эффектами
- Моделирование асинхронных итераторов
- Моделирование асинхронного менеджера контекста
- Создание подстановки из существующего объекта
- Декораторы patch
-
Дополнительные примеры
- Моделирование цепочек вызовов
- Частичная подстановка
- Моделирование метода-генератора
- Применение одной подстановки ко всем методам тестирования
- Моделирование несвязанных методов
- Проверка нескольких вызовов с помощью Mock
- Работа с изменяемыми аргументами
- Вложенные подстановки
- Моделирование словаря с помощью MagicMock
- Подклассы Mock и их атрибуты
- Моделирование импортов с помощью patch.dict
- Отслеживание порядка вызовов и менее подробные проверки вызовов
- Более сложные соответствия аргументов
-
Использование Mock
- 2to3 — Автоматическое преобразование кода Python 2 в 3
-
test— пакет регрессионных тестов для Python test.support— Утилиты для набора тестов Pythontest.support.script_helper— Утилиты для тестов выполнения Python
См. также режим разработки Python: параметр -X dev и переменную среды PYTHONDEVMODE.
© 2001–2022 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.8/library/development.html