Перейти к содержимому
К списку
testingНачальный2 часа 45 минут8 уроков

Pytest для джунов: Моки и интеграция

Моки для HTTP/файлов, coverage, pytest.ini, conftest.py — от учебных тестов к реальным задачам.

8 уроков 2 часа 45 минут
Pytest для джунов: Моки и интеграция

Что вы изучите

Переход от базовых тестов к реальным задачам: мокирование HTTP/файлов/времени, coverage для контроля качества, pytest.ini конфигурация, conftest.py. Мини-проект с кешем и API — не игрушечные примеры.

Мокирование без боли

unittest.mock, patch, requests-mock — учимся тестировать код с HTTP, файлами, временем без реальных зависимостей.

Coverage для контроля качества

pytest-cov: установка, чтение метрик, интеграция с IDE. Находите непокрытый код и дыры в тестах.

Конфигурация для команды

pytest.ini и conftest.py: настройки для проекта, переиспользование фикстур, маркеры для всей команды.

Реальный мини-проект

Todo-приложение с кешем, HTTP API и обработкой сбоев. Собираем все навыки вместе.

Отзывы

выпускники

The only way to go fast is to go well. And the only way to go well is to have tests.

Robert C. Martin (Uncle Bob)

Mocks aren't stubs. Use mocks to verify interactions, stubs to provide canned answers.

Martin Fowler

Что внутри курса

unittest.mock: Mock, patch, MagicMock для мокирования зависимостей

HTTP-моки: requests-mock или responses для тестирования API-клиентов

Мокирование времени: freezegun для тестов с датами и таймерами

Мокирование файлов: unittest.mock для file I/O без реальных файлов

Coverage: pytest-cov установка, pytest --cov, чтение метрик, HTML-отчёты

pytest.ini: конфигурация маркеров, testpaths, addopts для команды

conftest.py: переиспользование фикстур, plugins, hooks

Мини-проект: Todo с кешем и API от первого теста до интеграции

Требования

Pytest с нуля: Первые тесты

обязательно

Обязателен базовый курс. Вы должны знать: assert, простые фикстуры, параметризация, маркеры.

Перейти к курсу

FAQ

Нужен ли базовый курс перед этим?

ДА, обязательно. Этот курс предполагает, что вы знаете assert, фикстуры, параметризацию из базового курса (Уровень 1). Без этого будет сложно.

Чем отличается от базового курса?

Базовый курс — простые тесты (assert, фикстуры). Этот курс — реальные задачи: мокирование HTTP, coverage, конфигурация для команды. Переход от учебных примеров к практике.

Что дальше после этого курса?

Следующий шаг — 'Pytest: Профессиональные инструменты' (Уровень 3): pytest-xdist для ускорения, src layout, продвинутые фикстуры, плагины. Production-ready навыки.

Почему бесплатно?

Уровни 1-2 бесплатны навсегда — мой способ помочь джунам. Премиум-курсы начинаются с Уровня 4 (БД тестирование). Чем раньше пройдёте, тем быстрее рост.

#python-testing#pytest#mocking#coverage#integration#junior
Pytest для джунов: Моки и интеграция — Учебный центр — Potapov.me