Repolode
realpython

realpython/pytest-mypy

Плагин для pytest, который запускает статический анализатор типов mypy для исходных файлов во время тестов.

Звёзды
257
Форки
33
Открытые issues
8
Последний коммит
16 дней назад

Что это?

pytest-mypy добавляет проверку типов mypy в процесс работы с pytest. Если включить плагин флагом --mypy, он проверит файлы Python, переданные pytest, и сообщит об ошибках типов в результатах тестов. Так проверки типов будут выполняться вместе с существующими тестами. Плагин создан по образцу pytest-flake8, который выполняет ту же задачу для flake8.

Настройки mypy, как обычно, можно задавать в файле mypy.ini. Плагин также можно настроить через conftest.py, добавив в список его аргументов дополнительные параметры mypy, например --check-untyped-defs. Запуск pytest с флагом -m mypy ограничивает проверку типами и пропускает остальные тесты.

Проект можно установить из PyPI с помощью pip. Он распространяется по лицензии MIT.

Ключевые возможности

  • 01Запускает mypy для исходных файлов во время тестов pytest
  • 02Включается одним флагом --mypy
  • 03Читает стандартную конфигурацию из mypy.ini
  • 04Принимает дополнительные параметры mypy из conftest.py
  • 05Позволяет ограничить запуск только проверкой типов с помощью -m mypy

Сценарии использования

  • Выявление ошибок типов в CI-конвейере тестирования Python-проекта
  • Проверка типов вместе с модульными тестами без отдельного запуска инструмента
  • Применение более строгих параметров mypy, например --check-untyped-defs, только во время тестового запуска

Быстрый старт

  1. 1

    Установите плагин из PyPI с помощью pip

    pip install pytest-mypy
  2. 2

    Запустите pytest с флагом --mypy для тестовых файлов

    py.test --mypy test_*.py

Что важно знать

  • В README указано, что проект пока находится в разработке.

В подборках

Темы

Частые вопросы

Что такое pytest-mypy?
Плагин для pytest, который запускает статический анализатор типов mypy для исходных файлов во время тестов. pytest-mypy добавляет проверку типов mypy в процесс работы с pytest. Если включить плагин флагом --mypy, он проверит файлы Python, переданные pytest, и сообщит об ошибках типов в результатах тестов. Так проверки типов будут выполняться вместе с существующими тестами. Плагин создан по образцу pytest-flake8, который выполняет ту же задачу для flake8.
pytest-mypy можно использовать бесплатно? Какая у него лицензия?
pytest-mypy распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
pytest-mypy всё ещё поддерживается?
Активно поддерживается. Последний коммит в pytest-mypy — 22 окт. 2026 г..
Для чего можно использовать pytest-mypy?
Выявление ошибок типов в CI-конвейере тестирования Python-проекта Проверка типов вместе с модульными тестами без отдельного запуска инструмента Применение более строгих параметров mypy, например --check-untyped-defs, только во время тестового запуска
Как установить pytest-mypy?
Установите плагин из PyPI с помощью pip: pip install pytest-mypy Запустите pytest с флагом --mypy для тестовых файлов: py.test --mypy test_*.py
Где скачать pytest-mypy?
Исходный код и инструкции по установке — на GitHub: https://github.com/realpython/pytest-mypy

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Чисто Python-средство проверки типов во время выполнения, которое с минимальными накладными расходами проверяет соответствие аннотациям типов PEP для функций, классов и переменных.

3,5 тыс.+2 за неделю94PythonMITАктивно поддерживаетсяОбновлён 16 часов назад

Статический анализатор Ruby, который выводит типы из кода без аннотаций и стремится сообщать только о достоверно выявленных ошибках, например неопределённых методах и вызовах на nil.

1072RubyMPL-2.0Обновлён 13 часов назад