Spec-Zone.ru › Python 3.10

Инструменты разработки

Модули, описанные в этой главе, помогут вам писать программное обеспечение. Например, модуль pydoc принимает модуль и генерирует документацию на основе его содержимого. Модули doctest и unittest содержат фреймворки для написания юнит-тестов, которые автоматически проверяют код и подтверждают, что полученный результат соответствует ожидаемому. 2to3 может преобразовать исходный код Python 2.x в допустимый код Python 3.x.

Список модулей, описанных в этой главе:

  • typing — Поддержка подсказок типов
    • Соответствующие PEP
    • Псевдонимы типов
    • NewType
    • Callable
    • Обобщенные типы
    • Пользовательские обобщенные типы
    • Тип Any
    • Номинальный против структурного подтипирования
    • Содержимое модуля
      • Специальные примитивы типов
        • Специальные типы
        • Специальные формы
        • Создание обобщенных типов
        • Другие специальные директивы
      • Обобщенные конкретные коллекции
        • Соответствующие встроенным типам
        • Соответствующие типам в collections
        • Другие конкретные типы
      • Абстрактные базовые классы
        • Соответствующие коллекциям в collections.abc
        • Соответствующие другим типам в collections.abc
        • Асинхронное программирование
        • Типы контекстных менеджеров
      • Протоколы
      • Функции и декораторы
      • Инструменты интроспекции
      • Константа
  • pydoc — Генератор документации и система онлайн-справки
  • Режим разработки Python
  • Последствия использования режима разработки Python
  • Пример ResourceWarning
  • Пример ошибки bad file descriptor
  • doctest — Тестирование интерактивных примеров Python
    • Простое использование: Проверка примеров в строках документации
    • Простое использование: Проверка примеров в текстовом файле
    • Как это работает
      • Какие строки документации рассматриваются?
      • Как распознаются примеры в строках документации?
      • Какой контекст выполнения?
      • Что насчёт исключений?
      • Флаги опций
      • Директивы
      • Предупреждения
    • Базовый API
    • API модуля unittest
    • Расширенный API
      • Объекты DocTest
      • Объекты Example
      • Объекты DocTestFinder
      • Объекты DocTestParser
      • Объекты DocTestRunner
      • Объекты OutputChecker
    • Отладка
    • Soapbox
  • unittest — Фреймворк для юнит-тестирования
    • Базовый пример
    • Командная строка
      • Опции командной строки
    • Обнаружение тестов
    • Организация кода тестов
    • Использование старого кода тестов
    • Пропуск тестов и ожидаемые ошибки
    • Различение итераций тестов с помощью подтестов
    • Классы и функции
      • Тестовые случаи
        • Устаревшие псевдонимы
      • Группировка тестов
      • Загрузка и выполнение тестов
        • Протокол load_tests
    • Фикстуры класса и модуля
      • setUpClass и tearDownClass
      • setUpModule и tearDownModule
    • Обработка сигналов
  • unittest.mock — библиотека объектов-заглушек
    • Быстрый путеводитель
    • Класс Mock
      • Вызов
      • Удаление атрибутов
      • Имена заглушек и атрибут name
      • Прикрепление заглушек как атрибутов
    • Заменители
      • patch
      • patch.object
      • patch.dict
      • patch.multiple
      • Методы заменителей: start и stop
      • patch builtins
      • TEST_PREFIX
      • Вложенные декораторы patch
      • Где производить замену
      • Замена дескрипторов и прокси-объектов
    • MagicMock и поддержка магических методов
      • Моделирование магических методов
      • Magic Mock
    • Справочные инструменты
      • sentinel
      • DEFAULT
      • вызов
      • create_autospec
      • ANY
      • FILTER_DIR
      • mock_open
      • Автоспецификация
      • Закрепление заглушек
  • unittest.mock — начало работы
    • Использование Mock
      • Замена методов с помощью Mock
      • Mock для вызовов методов объекта
      • Моделирование классов
      • Именование ваших заглушек
      • Отслеживание всех вызовов
      • Установка возвращаемых значений и атрибутов
      • Выбрасывание исключений с помощью заглушек
      • Функции и итерируемые объекты побочного эффекта
      • Моделирование асинхронных итераторов
      • Моделирование асинхронного контекстного менеджера
      • Создание заглушки из существующего объекта
    • Декораторы patch
    • Дополнительные примеры
      • Моделирование связанных вызовов
      • Частичная замена
      • Моделирование метода генератора
      • Применение одной и той же замены ко всем методам тестирования
      • Моделирование несвязанных методов
      • Проверка нескольких вызовов с помощью mock
      • Обработка изменяемых аргументов
      • Вложенные замены
      • Моделирование словаря с помощью MagicMock
      • Подклассы mock и их атрибуты
      • Моделирование импортов с помощью patch.dict
      • Отслеживание порядка вызовов и менее подробные проверки вызовов
      • Более сложные соответствия аргументов
  • 2to3 — автоматическое преобразование кода Python 2 в 3
    • Использование 2to3
    • Фиксеры
    • lib2to3 — библиотека 2to3
  • test — пакет тестов регрессии для Python
    • Написание модульных тестов для пакета test
    • Запуск тестов с помощью командной строки
  • test.support — утилиты для набора тестов Python
  • test.support.socket_helper — утилиты для тестов сокетов
  • test.support.script_helper — утилиты для тестов выполнения Python
  • test.support.bytecode_helper — инструменты поддержки для тестирования корректной генерации байткода
  • test.support.threading_helper — утилиты для тестов потоков
  • test.support.os_helper — утилиты для тестов os
  • test.support.import_helper — утилиты для тестов импорта
  • test.support.warnings_helper — утилиты для тестов предупреждений

© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.10/library/development.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API