Pytest для новичков: Dependency Inversion, Fixtures и Магия Моков | Часть 2

В этом видео мы переходим на уровень Middle-разработки и разбираемся, как писать по-настоящему профессиональные тесты на Python с использованием Pytest. Мы внедрим инверсию зависимостей (Dependency Inversion), научимся использовать Protocol для создания интерфейсов и разделим логику на Service и Repository. Вы узнаете, как избавиться от дублирования кода с помощью фикстур в conftest.py, как изолировать тесты от внешних систем с помощью Mock-объектов и как организовать тестирование на основе данных, загружая кейсы напрямую из JSON-файлов. В этом выпуске: — Почему жесткая привязка классов — это путь в никуда (Refactoring). — Внедрение Protocol: интерфейсы без наследования. — Философия Fixtures: масштабируемость и принцип DRY. — Моки (Mocks): создание быстрых и изолированных тестов. — Параметризация через JSON: тестируем десятки кейсов одной функцией. — Настройка pytest.ini и работа с маркерами. 00:00 — Заменяем жесткую привязку на Protocol (Интерфейсы) 02:00 — Разделение на Service и Repository 04:40 — Создаем conftest.py и внедряем Моки (Mocking) 06:29 — Тестирование на данных: загружаем кейсы из JSON 09:37 — Декоратор @pytest.mark.parametrize в деле 💻 Код из видео в канале: https://t.me/WalkingProgrammer/25 🔔 Подпишись, чтобы не пропустить следующую серию про тестирование БД!

Pytest для новичков: Правильная структура и первый тест | Часть 1
▶︎

Pytest для новичков: Правильная структура и первый тест | Часть 1

Python. Разбираем работу с SQLite
▶︎

Python. Разбираем работу с SQLite

Full App Building Course with Cursor (3+ Hours)
▶︎

Full App Building Course with Cursor (3+ Hours)

Морозов Иван собеседование python junior разработчик
▶︎

Морозов Иван собеседование python junior разработчик

Real Livecoding Interview: Junior Python Developer
▶︎

Real Livecoding Interview: Junior Python Developer

Чистая Windows без мусора: Как я настраиваю ОС, которая служит годами
▶︎

Чистая Windows без мусора: Как я настраиваю ОС, которая служит годами

Are New Software Engineers Worse
▶︎

Are New Software Engineers Worse

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup
▶︎

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

Device Searches 2026: What the FSB Looks for at the Border and How to Hide Your Data
▶︎

Device Searches 2026: What the FSB Looks for at the Border and How to Hide Your Data

КАК УСТРОЕН TCP/IP?
▶︎

КАК УСТРОЕН TCP/IP?

Самая смертоносная ХАКЕРСКАЯ АТАКА в истории
▶︎

Самая смертоносная ХАКЕРСКАЯ АТАКА в истории

Как пройти алгоритмическое собеседование | Подготовка к алгоритмическим собеседованиям
▶︎

Как пройти алгоритмическое собеседование | Подготовка к алгоритмическим собеседованиям

FAILED operation of American mercenaries | Instructor reacts
▶︎

FAILED operation of American mercenaries | Instructor reacts

Что ждет Путина внутри страны в случае поражения? | Екатерина Шульман
▶︎

Что ждет Путина внутри страны в случае поражения? | Екатерина Шульман

Этот файл от Карпатова взорвал GitHub за неделю | 43 000 установок Claude Code
▶︎

Этот файл от Карпатова взорвал GitHub за неделю | 43 000 установок Claude Code

Real Interview for a Middle Python Developer (Correct Answers)
▶︎

Real Interview for a Middle Python Developer (Correct Answers)

Лучший Гайд по Kafka для Начинающих За 1 Час
▶︎

Лучший Гайд по Kafka для Начинающих За 1 Час

Factorio: An Engineering Masterpiece of Infinite Automation
▶︎

Factorio: An Engineering Masterpiece of Infinite Automation

React JS фундаментальный курс от А до Я
▶︎

React JS фундаментальный курс от А до Я