Чему вы научитесь
- Писать тесты на pytest: assert, pytest.raises, pytest.approx, запуск и чтение отчётов
- Готовить данные и окружение фикстурами: yield, scope, conftest.py, tmp_path, capsys
- Проверять функцию на таблице примеров через parametrize и находить граничные случаи
- Подменять сеть, время и окружение: monkeypatch, Mock, patch, проверка вызовов
- Тестировать код с SQLAlchemy 2.0, HTTP-клиенты на requests и httpx, обработчики FastAPI
- Настраивать маркеры, покрытие и запуск тестов в CI на GitHub Actions
О курсе
Тренажёр по pytest: 153 задачи с автопроверкой. Вы пишете настоящие тесты, а проверка запускает их в pytest 8 и подкладывает в код ошибки. Фикстуры, параметризация, моки, SQLAlchemy, HTTP, FastAPI, покрытие и CI.
Для кого этот курс
- Python-разработчики, которые ещё не писали тесты или пишут их от случая к случаю.
- Выпускники курсов по основам Python, которым нужен следующий практический навык для работы и резюме.
- Бэкенд-разработчики на FastAPI и SQLAlchemy, которые хотят уверенно менять код, не боясь что-то сломать.
- Тестировщики, переходящие к автотестам на Python.
Начальные требования
- Основы Python: функции, классы, исключения, списки и словари, импорт модулей.
- Умение запускать команды в терминале.
- Для разделов про базы данных, HTTP и CI пригодится общее представление об SQLAlchemy, HTTP-запросах и Git, но всё необходимое объясняется по ходу.
- Устанавливать ничего не нужно: задачи решаются в браузере. Чтобы повторять примеры у себя, достаточно Python 3.10 или новее и команды
pip install pytest.
Преподаватели курса
Как проходит обучение
43 коротких урока: теория с примерами и 153 задачи с автопроверкой прямо на Stepik. 70 задач выполняются в редакторе кода: вы пишете тесты, фикстуры и настройки, а проверка запускает их в настоящем pytest 8 на Python 3.12 и подкладывает в проект версии с ошибками. Остальные задачи — быстрые вопросы на понимание. Видео нет, учиться можно в своём темпе.
Нагрузка
4–6 часов в неделю