Pytest: Профессиональные инструменты
pytest-xdist (8x ускорение), src layout, продвинутые фикстуры, плагины — production-ready инструменты.

Что вы изучите
Production-ready навыки для middle-разработчиков: pytest-xdist для 8x ускорения, src layout для правильной структуры проектов, продвинутые фикстуры (scope, autouse, factories), создание собственных плагинов. Превращаем учебный проект в production-ready.
8x ускорение с pytest-xdist
Параллельный запуск тестов: из 10 минут в 2 минуты. Настройка, best practices, подводные камни.
Правильная структура проектов
src layout: как в настоящих проектах. pip install -e ., правильные импорты, никаких sys.path.append.
Продвинутые фикстуры
Scope (session/module/function), autouse, fixture factories, indirect parametrization. Максимум переиспользования.
Создание собственных плагинов
Пишем свой pytest-плагин: кастомные маркеры, hooks, отчёты. Автоматизация для команды.
Отзывы
выпускники“Optimism is an occupational hazard of programming: feedback is the treatment.”
Kent Beck
“The ratio of time spent reading versus writing is well over 10 to 1. We are constantly reading old code as part of the effort to write new code.”
Robert C. Martin (Uncle Bob)
Что внутри курса
pytest-xdist: установка, pytest -n auto, scope стратегии для параллельного запуска
src layout: структура проекта, pip install -e ., pyproject.toml, правильные импорты
Advanced fixtures: session/module/function scope, autouse, фикстуры для фикстур
Fixture factories: динамическое создание фикстур, indirect parametrization
Request object: доступ к контексту теста из фикстуры, параметры, маркеры
Custom markers: регистрация, использование, строгий режим (strict markers)
Pytest plugins: создание своего плагина, hooks, conftest как плагин
Coverage thresholds: минимальное покрытие, enforcement в CI, fail-under
Практика: превращаем учебный проект в production-ready со всеми инструментами
Требования
Pytest для джунов: Моки и интеграция
обязательноОбязателен курс уровня 2. Вы должны знать: моки, coverage, pytest.ini, conftest.py.
Перейти к курсуПрограмма курса
⚡ pytest-xdist: 8x ускорение через параллельный запуск
25 минут
📂 src layout: Правильная структура проектов
20 минут
🔄 Продвинутые фикстуры: scope и autouse
25 минут
🏭 Fixture factories и indirect parametrization
25 минут
🏷️ Custom markers и strict mode
15 минут
🔌 Создание pytest-плагинов
25 минут
📊 Coverage thresholds и enforcement
15 минут
🏆 Практика: Production-ready проект
25 минут
FAQ
Нужен ли опыт с базовым и junior курсами?
ДА, обязательно. Этот курс предполагает, что вы прошли Уровень 1 (базовые тесты) и Уровень 2 (моки, coverage). Без этого будет сложно.
Чем отличается от предыдущих курсов?
Предыдущие курсы — основы и моки. Этот курс — production-инструменты: параллельный запуск (xdist), правильная структура проектов (src layout), продвинутые техники. Готовность к работе в команде.
Что дальше после этого курса?
Два пути: 1) 'Тестирование БД с PostgreSQL' (Уровень 4) — для работы с базами данных. 2) 'Async Race Conditions' (Уровень 5) — ТОЛЬКО если работаете с asyncio. Затем финальный курс по TDD/CI/CD.
Почему бесплатно?
Уровни 1-3 бесплатны — фундамент для всех. Премиум-курсы начинаются с Уровня 4 (специализированные темы: БД, async, TDD). Базовые навыки должны быть доступны всем.
Дополнительные материалы
Эти материалы дополняют курс, но не являются его частью. Изучайте по желанию.
Тестирование БД с PostgreSQL
Следующий уровень: Alembic миграции, factory_boy, Testcontainers, production CI/CD для интеграционных тестов.
Pytest: Async Race Conditions
Специализация: async-тестирование, race conditions, flaky tests. ТОЛЬКО для тех, кто работает с asyncio ежедневно.