pytest 9.0.2, выпущенный 06.12.2025, является важным обновлением, ориентированным на стабильность и совместимость популярного фреймворка для тестирования на Python. Этот релиз устраняет несколько ключевых проблем, обеспечивая более плавную работу для QA-инженеров.

Key Changes

pytest 9.0.2 включает важные исправления ошибок и улучшения документации, устраняя несколько проблем совместимости и производительности.

Исправления Ошибок:

  • Прогресс в Терминале: Новая функция отображения прогресса в терминале, представленная в pytest 9.0.0, теперь отключена по умолчанию на большинстве платформ (кроме Windows). Это изменение было реализовано для решения проблем совместимости с различными эмуляторами терминалов. Пользователи могут явно повторно включить эту функцию, передав флаг -p terminalprogress. Кроме того, escape-коды больше не выводятся, если переменная окружения TERM установлена в dumb, что предотвращает проблемы отображения в минимальных средах.
  • Восстановление config.inicfg: Приватный атрибут config.inicfg, который претерпел критическое изменение в pytest 9.0.0, был восстановлен до рабочего состояния с использованием совместимости. Это обеспечивает непрерывную функциональность для существующих плагинов и конфигураций, которые полагаются на этот атрибут. Важно отметить, что config.inicfg будет официально объявлен устаревшим в pytest 9.1 и запланирован к удалению в pytest 10.
  • Производительность: Исправлена значительная проблема квадратичной сложности при обработке unittest subtests в Python 3.10. Это исправление улучшает скорость выполнения для наборов тестов, использующих функцию subtests из unittest.
  • Тип Конфигурации: Тип TOML для настройки tmp_path_retention_count в справочнике API был исправлен с числа на строку, обеспечивая точную документацию для файлов конфигурации.

Улучшенная Документация:

  • Официальный справочник API теперь включает подробную, перекрестно-ссылочную документацию по флагам командной строки pytest. Это улучшение предоставляет централизованный и легко навигируемый ресурс для понимания всех доступных опций командной строки, полезный как для новых пользователей, изучающих основы тестирования с pytest, так и для опытных инженеров, исследующих продвинутые методы pytest.

Для получения полной информации, обратитесь к официальному changelog pytest 9.0.2.

Impact for QA Teams

Это обновление стабилизирует вывод pytest в терминале, обеспечивая более плавное выполнение в различных средах. Восстановление config.inicfg предотвращает потенциальные сбои для существующих плагинов, а улучшения производительности приносят пользу проектам, использующим unittest subtests. Улучшенная документация упрощает навигацию по опциям командной строки для всех пользователей, оптимизируя рабочие процессы автоматизации тестирования.