Содержание курса
Библиотека requests
8 уроков
1.
Видеоурок
↗
2.
Введение в requests
↗
3.
Работа с GET-запросами
↗
4.
Работа с POST, PUT, PATCH-запросами
↗
5.
Работа с DELETE-запросами
↗
6.
Полезные API для практики
↗
7.
Полезные советы при выполнении домашней работы
↗
8.
Самостоятельная работа
↗
Pydantic - Часть 1
9 уроков
1.
Видеоурок
↗
2.
Что такое Pydantic?
↗
3.
Фундамент Pydantic: BaseModel
↗
4.
Автоматическое преобразование типов
↗
5.
Обработка ошибок валидации
↗
6.
Работа с Optional полями
↗
7.
Вложенные модели
↗
8.
Основные методы BaseModel
↗
9.
Самостоятельная работа
↗
Pydantic - Часть 2
14 уроков
1.
Видеоурок
↗
2.
Валидация списков
↗
3.
Кастомные валидаторы
↗
4.
Модуль Typing
↗
5.
Основные типы из модуля typing
↗
6.
Literal - ограничение возможных значений
↗
7.
Класс Field - дополнительные параметры полей
↗
8.
Числовые ограничения с Field
↗
9.
Строковые ограничения с Field
↗
10.
Дополнительные возможности Field
↗
11.
Алиасы (Aliases) - работа с разными стилями именования
↗
12.
Комплексный пример
↗
13.
Практические советы
↗
14.
Самостоятельная работа
↗
Service Object Model - Часть 1
4 урока
1.
Видеоурок
↗
2.
Что такое Service Object Model и зачем он нужен
↗
3.
Структура проекта
↗
4.
API хелпер
↗
Service Object Model - Часть 2
14 уроков
1.
Видеоурок
↗
2.
Код с занятия
↗
3.
Слой services/ — Service Object
↗
4.
Слой endpoints.py — адреса API
↗
5.
Слой payloads.py — тела запросов
↗
6.
Слой models/ — Pydantic-модели ответов
↗
7.
Слой utils/helper.py — общая логика валидации ответов
↗
8.
Слой config/ — окружения и заголовки
↗
9.
Слой auth/ — токены и фабрика ролей
↗
10.
conftest.py и BaseTest — точка входа в тесты
↗
11.
Полный цикл одного теста: что происходит и в каком порядке
↗
12.
Логирование и Allure-отчёты
↗
13.
Как добавить новый сервис в проект (пошагово)
↗
14.
Разбор тонких мест и типичных ошибок в коде
↗
Логирование
7 уроков
1.
Видеоурок
↗
2.
Что такое логирование
↗
3.
Уровни логирования
↗
4.
Настройка логирования и запись в файл
↗
5.
Логирование в несколько мест (в файл и консоль)
↗
6.
Ротация логов
↗
7.
Создание логера
↗
Введение в Locust
16 уроков
1.
Видеоурок
↗
2.
Что такое Locust и зачем он нужен
↗
3.
Чем нагрузочный тест отличается от функционального
↗
4.
Структура проекта и связь с SOM
↗
5.
locustfile.py — точка входа
↗
6.
config.py — переменные окружения
↗
7.
client.py — обёртка LocustRestClient
↗
8.
tasks/ — атомарные операции с API
↗
9.
flows/ — бизнес-сценарии
↗
10.
Как Locust «крутит» нагрузку: жизненный цикл виртуального пользо
↗
11.
Запуск Locust: UI и headless-режимы
↗
12.
Чтение метрик: что показывает Locust в интерфейсе
↗
13.
Параметризация: wait_time, weight, tasks
↗
14.
Как добавить новый сценарий (пошагово)
↗
15.
Разбор тонких мест и неточностей в коде
↗
16.
Приложение: команды для запуска
↗
API Game Changer
2 урока
1.
Видеоурок
↗
2.
Настройки проекта
↗
Работа с HTTP-запросами: библиотека httpx
14 уроков
1.
Введение в httpx
↗
2.
Синхронные запросы (как в requests)
↗
3.
Работа с POST, PUT, PATCH-запросами
↗
4.
Работа с DELETE-запросами
↗
5.
Теория: Асинхронность в Python
↗
6.
Асинхронность в автотестах: реальные сценарии
↗
7.
Главная фишка httpx: Асинхронные запросы
↗
8.
Использование Client (рекомендуемый подход)
↗
9.
Настройка таймаутов
↗
10.
HTTP/2 поддержка
↗
11.
Обработка ошибок
↗
12.
Полезные API для практики
↗
13.
Полезные советы
↗
14.
Миграция с requests на httpx
↗