Джокер
Администратор
- Регистрация
- 1 Янв 2015
- Сообщения
- 140.674
- Реакции
- 77.683
Складчина: Автоматизатор тестирования на Python [Тариф Базовый] [Яндекс Практикум]
Поможем освоить автоматизацию, чтобы избавиться от рутины и больше зарабатывать:
Освоите pytest, Selenium WebDriver и другие нужные инструменты
Поймёте, как строить процесс автоматизации внутри проекта
Будете перенимать опыт тестировщиков из Яндекса и других крупных IT-компаний
Сможете заниматься в удобное время и совмещать учёбу с работой
Поймёте, как и в каком направлении развивать карьеру
Кому подойдёт курс:
Начинающим тестировщикам, которые хотят повысить квалификацию – получите новые навыки, которые помогут найти работу или получить повышение на текущем месте
Опытным ручным тестировщикам – сможете полностью перейти в автоматизацию: писать автотесты для веб-приложений и API, проводить юнит-тесты, развивать инфраструктуру проекта
Тем, у кого мало или совсем нет опыта в программировании – познакомитесь с основами Python и выйдете на новый уровень в тестировании
Если уже знакомы с QA и хотите руководить – узнаете, как строить и оптимизировать QA/QC-процессы, а также лидировать техническое развитие
Зачем инженеру по ручному тестированию учиться автоматизации:
Избавитесь от рутины – автоматизация позволит избежать рутинных проверок и ускорить тестирование задач
Освоите новые инструменты и технологии – станете конкурентоспособнее: VS Code, Pytest, Git, DevTools, Selenium WebDriver, Allure, XPath, CSS, Консоль
Сможете больше зарабатывать – зарплаты автоматизаторов почти в 2 раза выше, чем у инженеров по ручному тестированию: Manual ~70 000 руб., Automation ~150 000 руб., Senior automation ~250 000 руб.
Чему вы научитесь:
Автоматизировать тестирование – как веб-приложений, так и API – для этого освоите pytest, Selenium WebDriver, Git, XPath, CSS и Allure
Писать код на Python – поймёте, как устроен язык, изучите его базовый синтаксис, напишете небольшое приложение
Проводить юнит-тесты – создавать моки и стабы, использовать Spy, разрывать зависимости
Выстраивать процесс автоматизации – разберётесь в инфраструктуре и архитектуре приложений, чтобы покрывать их тестами на всех уровнях
Усилите свои хардскилы с помощью ИИ. Научитесь использовать нейросети, чтобы:
Генерировать классы Page Object, локаторы и методы для Pytest
Создавать тестовые данные и mock-объекты для любых сценариев
Автоматически составлять матрицу покрытия требований
Выявлять пропущенные кейсы
Быстро анализировать ошибки в логах
Составлять рекомендации по исправлению багов
Как вы будете учиться:
Будете изучать наглядную теорию и сразу отрабатывать её в тренажёре.
Заниматься можно в любое удобное время: сначала объяснят теорию понятным языком, а потом вы закрепите её в заданиях с автоматической проверкой – можно сразу увидеть ошибки, исправить их, попробовать ещё раз
Встречаться с опытными автоматизаторами на вебинарах.
Каждый спринт специалисты проводят вебинары, где разбирают сложные темы и интересные кейсы, делятся опытом, отвечают на вопросы. После вебинара пришлют запись, а всё, что не успеете спросить, можно обсудить в общем чате
Делать проекты и получать подробную обратную связь.
В течение курса вы сможете сделать и добавить в портфолио 7 проектов. Каждый из них проверит тестировщик с большим опытом в автоматизации и даст подробную обратную связь, с которой проще развиваться
Программа:
Бесплатное введение
Узнаете чуть больше о курсе и о том, как проходит учёба: оцените подачу материала и тренажёр для написания кода. Введение поможет понять, подходит ли вам такой формат.
Основы Git
Настроите Git, разберёте основные команды: ветвление и слияние изменений. Погрузитесь в работу с GitHub и подготовитесь к первому проекту.
Основы Python
Познакомитесь с базовыми конструкциями языка: классами и объектами, функциями, ветвлениями и так далее. Будете сразу применять знания на практике – писать код внутри уроков и в среде разработки VS Code.
ООП: наследование и полиморфизм
Изучите основы объектно-ориентированного программирования (ООП). Это принципы, которые помогают решать сложные задачи, настраивать методы и классы, создавать логичные иерархии. ООП помогает писать программы, которые легко поддерживать и проверять.
ООП: инкапсуляция
Продолжите изучать ООП. После этого модуля сможете решать комплексные сложные задачи в коде. Чтобы закрепить полученные навыки, напишете небольшое приложение.
Юнит-тестирование
Освоите важную часть автоматического тестирования – фреймворк pytest. Его используют, чтобы не писать каждый раз код с нуля. Начнёте работать в pytest сначала с самыми простыми тестами – юнит-тестами. Потом узнаете, как в pytest тестировать веб.
UI-тестирование
Научитесь автоматизировать проверки, которые обычно проводятся вручную через браузер. Для этого изучите Selenium – с его помощью программы с автотестами «нажимают» на кнопки и «заполняют» поля ввода. Примените всё, что узнали о Python, для тестирования веб-приложений.
Page Object Model
Узнаете, как улучшать автотесты с помощью паттерна проектирования Page Object Model. Он помогает выстраивать правильную структуру тестов, чтобы их было легче читать и поддерживать. Построите отчёты о тестировании с помощью инструмента Allure, который предоставляет наглядную статистику о проверках.
Тестирование API
Узнаете, как автоматизировать тестирование API. Научитесь применять Postman и Swagger для автоматизации, писать несколько видов запросов. Потренируетесь работать с моками и стабами – заглушками, которые имитируют поведение реальных сервисов.
Архитектура
Мало покрыть приложение тестами, нужно позаботиться о том, чтобы процесс тестирования был исправен. Поэтому в этом модуле вы научитесь оценивать, насколько полно функциональность покрыта тестами. Это нужно, чтобы не было проблем при автоматизации.
Итоговый проект
Это проект, который объединит весь изученный материал. Вам предстоит покрыть тестами веб-приложение, API и написать юнит-тесты на отдельную функциональность.
Дополнительный модуль. Основы работы с базами данных
Это дополнительный модуль, в котором вы узнаете, как устроены базы данных, напишете SQL-запросы, научитесь агрегировать данные и связывать несколько таблиц. Также узнаете, как группировать и сортировать данные в таблицах.
Дополнительный модуль. Принципы работы с ИИ
Начнёте рационально применять искусственный интеллект. Узнаете ограничения моделей. Научитесь писать точные промпты.
Дополнительный модуль. Применение ИИ в тестировании
Пройдёте цикл автоматизации с поддержкой ИИ: от генерации тест-кейсов и структуры проекта до создания сложных данных, написания кода по шаблону Page Object и аналитики.
Спойлер: Полная программа
Бесплатное введение:
Узнаете чуть больше о курсе и о том, как проходит учёба: оцените подачу материала и тренажёр для написания кода. Введение поможет понять, подходит ли вам такой формат.
Основы Git:
Настроите Git, разберёте основные команды: ветвление и слияние изменений. Погрузитесь в работу с GitHub и подготовитесь к первому проекту.
Настройка окружения и знакомство с командной строкой.
Что такое Git. Как работать с командной строкой – навигация и советы. Операции с папками и файлами: создание, копирование, перемещение, чтение и удаление. Эффективная работа с командной строкой. Установка и настройка Git
Работа с Git.
Инициализация репозитория и добавление файлов. Создание первого коммита. Знакомство с историей коммитов и GitHub. Регистрация на GitHub. Создание удалённого репозитория. Что такое SSH. SSH-ключ: генерация и привязывание к GitHub. Связывание и синхронизация локального и удалённого репозитория
Основы работы с ветками в Git.
Скачивание и клонирование репозитория. Выполнение Fork. Создание ветки
Основы Python:
Познакомитесь с базовыми конструкциями языка: классами и объектами, функциями, ветвлениями и так далее. Будете сразу применять знания на практике – писать код внутри уроков и в среде разработки VS Code.
Как устроено обучение.
Сроки и дедлайны. Как всё организовано. Что поможет справиться. Ошибки и ответственность
Знакомство с Python.
Язык Python. Вывод на экран. Пробелы в выводе на экран. Переменные. Как называть переменные. Константы. Типы данных: числа и строки. Операции с целыми числами. Конкатенация строк. Форматирование строк. Преобразование типов. Дробные числа
Ветвления.
Логические выражения. Тип данных bool. Ветвление кода. Ветвление кода с else. Множественные ветвления. Логические операции. Приоритет логических операторов
Списки.
Знакомство со списками. Длина списка и индексы. Списки и индексы: практика. Операции со списками: append(), insert() и remove(). Операции со списками: pop() и in. Сложение списков. Списки списков и копирование. Операции со списками: практика
Циклы.
Циклы. Диапазоны от и до. Функция reversed(). Перебор через обратный срез списка. Вложенные циклы. Цикл с условием. Циклы: практика
Операции со строками.
Длина строки, индексы и подстроки. Метод split(). Метод replace()
Словари и коллекции.
Что такое словарь. Как получить и изменить значение в словаре. Как добавить элементы в словарь. Метод get(). Методы keys() и values(). Перебор элементов в словаре. Как проверить наличие элемента. Словари: практика
Функции.
Функция. Как объявить и вызвать функцию. Аргументы и параметры. Возврат значений из функции. Значение по умолчанию и разные виды аргументов. Библиотеки. Вызов функции из функции. Ошибки и их обработка. Ошибки в списках и словарях. Функции: практика
Классы и объекты.
Классы и объекты. Как создать класс. Как создать объект. Ошибка AttributeError. Как объявить и вызвать метод. Встроенные методы: __dict__. Как взаимодействуют классы
VS Code.
Командная строка. Как запустить Python в командной строке. Среда разработки VS Code. Как создать проект. Интерфейс VS Code. Запуск и отладка проекта
Решите несколько комплексных задач на Python. Напишете программы, которые печатают текст, считают время и составляют таблицы
ООП: наследование и полиморфизм:
Изучите основы объектно-ориентированного программирования (ООП). Это принципы, которые помогают решать сложные задачи, настраивать методы и классы, создавать логичные иерархии. ООП помогает писать программы, которые легко поддерживать и проверять.
Наследование.
Что такое ООП. Наследование. Наследование с конструктором. Функция super(). Переопределение методов. Переопределение методов: меняется сигнатура. Переопределение и super(). Полиморфизм
Множественное наследование.
Множественное наследование. Множественное наследование с конструктором. Множественное наследование и super(). Ромбовидное наследование. Миксины. Наследование: практика
Статические методы.
Что такое статический метод. Как вызвать статический метод через класс. Как применять статический метод на практике
Методы класса.
Что такое методы класса. Как применять методы класса
Область видимости.
Область видимости. Когда какую область видимости использовать
С помощью принципов ООП решите несколько комплексных задач на Python
ООП: инкапсуляция:
Продолжите изучать ООП. После этого модуля сможете решать комплексные сложные задачи в коде. Чтобы закрепить полученные навыки, напишете небольшое приложение.
Лямбда-функции.
Что такое лямбда-функции. Выражение и аргументы лямбда-функций. Функция filter(). Функция map()
Инкапсуляция.
Модификаторы доступа. Модификатор private. Что такое инкапсуляция. Геттеры и сеттеры. Свойства. Инкапсуляция: практика
Обработка исключений.
Что такое исключения. Как обрабатывать исключения. Разные типы исключений и их обработка. Как определить тип исключения. Продвинутая обработка исключений. Вызов исключений. Как создать исключение. Обработка исключений: практика
Напишете консольное приложение с помощью принципов ООП и VS Code
Юнит-тестирование:
Освоите важную часть автоматического тестирования – фреймворк pytest. Его используют, чтобы не писать каждый раз код с нуля. Начнёте работать в pytest сначала с самыми простыми тестами – юнит-тестами. Потом узнаете, как в pytest тестировать веб. Темы: Git, Консоль, Pytest, Юнит-тесты:
Консоль.
Командная строка: начало работы. Подключение к удалённому серверу. Как переходить по каталогам. Как управлять файлами и папками. Как создавать и удалять файлы. Как копировать и перемещать файлы. Сокращённые команды. Работа с текстовыми файлами. История и полезные команды. Фильтрация содержимого файлов. Как быстро работать в командной строке
Продвинутая командная работа в Git.
Пререквизиты. Fast-forward. Git push. Модели веток. Feature-branch-модель. Pull request и code review. Работа с PR. Разрешение конфликта
Основы юнит-тестов и pytest.
Фреймворк pytest. Что такое юнит-тесты. Пирамида тестирования. Базовые правила тестов. Как называть юнит-тесты. Как установить pytest. Структура теста в pytest
Ассерты.
Что такое assert. Базовые assert. Как покрыть тестами метод. Как покрыть тестами класс. Как называть файлы для тестов. Как называть тесты. Как называть все элементы в тестах
Параметризация.
Что такое параметризация. Как написать параметризованный тест. Параметризация: практика
Фикстуры.
Фикстуры. Особенности фикстур. Параметры scope и autouse
Оценка покрытия.
Оценка покрытия. Как посчитать покрытие
Покроете юнит-тестами небольшое консольное приложение и выложите работу в Git
UI-тестирование:
Научитесь автоматизировать проверки, которые обычно проводятся вручную через браузер. Для этого изучите Selenium – с его помощью программы с автотестами «нажимают» на кнопки и «заполняют» поля ввода. Примените всё, что узнали о Python, для тестирования веб-приложений.
Архитектура веб-приложений.
Клиент-серверная архитектура. Веб-приложение. URL. Протоколы HTTP и HTTPS. Структура HTTP-запроса. Структура HTTP-ответа. Веб-страница: HTML. HTML: теги и атрибуты. Веб-страница: CSS. Веб-страница: JavaScript. DOM
Devtools.
Поиск элементов в Devtools. Работа с разрешениями. Просмотр запросов. Куки
Введение в UI-тестирование.
Что такое UI-тесты. Пирамида тестирования. UI-тесты: преимущества и недостатки
Selenium: поиск элементов.
Что такое Selenium WebDriver. Что такое локатор. Основные теги. Что такое XPath. Поиск по элементу и атрибуту. Узлы. Значение элемента. Список элементов. Усечённый список. Видимые и невидимые элементы. Относительный и абсолютный путь. Вложенные элементы по относительному пути. Сложный поиск. Составные локаторы. Поиск по CSS
Selenium: базовые методы.
Подключение Selenium в VS Code. Открыть и закрыть страницу. Найти элемент. Кликнуть по элементу. Задать ожидания. Заполнить поле ввода. Получить текст элемента. Перейти к элементу. Работа с куками из тестов. Selenium: практика. Структура проекта
Протестируете UI-интерфейс сервиса заказа еды Stellar Burgers с помощью Selenium и Devtools, покроете тестами несколько веб-страниц
Page Object Model:
Узнаете, как улучшать автотесты с помощью паттерна проектирования Page Object Model. Он помогает выстраивать правильную структуру тестов, чтобы их было легче читать и поддерживать. Построите отчёты о тестировании с помощью инструмента Allure, который предоставляет наглядную статистику о проверках.
Page Object.
Что такое Page Object Model. Как задать класс page object. Работа с локаторами. Работа с методами. Как объединять методы в шаг. Методы setup_class() и teardown_class(). POM: практика
Allure.
Отчёты о тестировании. Установка Allure. Allure: декораторы
Структура проекта.
Файл с внешними зависимостями. Структура проекта с POM. Как улучшить организацию проекта
Напишете тесты для веб-приложения с помощью Page Object Model, построите информативный отчёт о тестировании в Allure
Тестирование API:
Узнаете, как автоматизировать тестирование API. Научитесь применять Postman и Swagger для автоматизации, писать несколько видов запросов. Потренируетесь работать с моками и стабами – заглушками, которые имитируют поведение реальных сервисов.
Введение в API.
Архитектура приложений. Что такое API. Архитектурные решения – REST. HTTP: структура запросов и ответов. JSON. Тестирование API. Тестирование сервера: Postman. Документация API. Swagger. Авторизация
Как тестировать API с помощью Python.
Зачем автоматизировать тестирование API. Флоу автоматизированного тестирования API. Библиотека Requests. Метод GET. Десериализация. Метод POST. Сериализация. Метод DELETE. Метод PATCH
Подготовка к автоматизации.
Как подготовить тестовый стенд. Как написать тест-кейс. Как подготовить данные. Как хранить данные
Моки.
Изоляция в тестах. Что такое мок. Как создать мок. Как замокировать вызов. Как проверить вызовы мока. Как замокировать внешний сервис. Моки в UI-тестах. Моки в API-тестах
Протестируете API учебного веб-приложения
Архитектура:
Мало покрыть приложение тестами, нужно позаботиться о том, чтобы процесс тестирования был исправен. Поэтому в этом модуле вы научитесь оценивать, насколько полно функциональность покрыта тестами. Это нужно, чтобы не было проблем при автоматизации. Темы: Архитектура приложений, Флоу работы автоматизатора:
Архитектура.
Монолитная архитектура. Микросервисная архитектура. Виды межсервисного взаимодействия. Архитектурные паттерны
Как покрывать тестами разные уровни программы.
Сколько тестов нужно на каждый уровень пирамиды. Когда запускают тесты разных уровней. Оценка покрытия по каждому уровню
Рабочие задачи автоматизатора.
Какие задачи решает автоматизатор. Автоматизация новой фичи. Обновление устаревших тестов. Автотесты для новой системы. Практика
Подготовка к итоговому проекту.
Юнит-тесты: повторение. Тестирование API: повторение. Тестирование веб-приложения: повторение. Поделись впечатлениями о проекте
Подытожите знания и выполните задания на повторение юнит-тестов, тестирования API и веб-приложений
Итоговый проект:
Это проект, который объединит весь изученный материал. Вам предстоит покрыть тестами веб-приложение, API и написать юнит-тесты на отдельную функциональность.
Дополнительный модуль. Основы работы с базами данных:
Это дополнительный модуль, в котором вы узнаете, как устроены базы данных, напишете SQL-запросы, научитесь агрегировать данные и связывать несколько таблиц. Также узнаете, как группировать и сортировать данные в таблицах. Темы: SQL-запросы, Тестирование баз данных:
Базы данных.
Тестирование БД. Реляционные БД. SQL-запросы. Срезы данных в SQL. Агрегирующие функции. Изменение типов. Группировка данных. Сортировка данных. БД и консоль. Изменение данных: INSERT, UPDATE, DELETE. Снятие дампов. Тест: основы баз данных
Дополнительный модуль. Принципы работы с ИИ:
Начнёте рационально применять искусственный интеллект. Узнаете ограничения моделей. Научитесь писать точные промпты.
Принципы и ограничения.
Поймёте, почему нейросети ошибаются при генерации кода и как этого избежать. Научитесь проводить ревью ИИ-решений: находить несуществующие функции и логические ошибки
Выбор инструментов.
Сравните облачные и локальные модели, IDE-плагины и AI-чаты. Научитесь подбирать ИИ-инструменты под конкретные задачи, исходя из их стоимости и функциональности
Основы промптинга.
Разберёте структуру запроса: контекст, задачу, формат. Освоите zero-shot, few-shot, chain-of-thought, чтобы получать точные и предсказуемые ответы
Планирование и декомпозиция.
Узнаете, как разбивать объёмные задачи на подзадачи, а также планировать рабочие и личные проекты с помощью ИИ
Освоите промпт-инжиниринг, научитесь выбирать оптимальные ИИ-решения и выявлять галлюцинации
Дополнительный модуль. Применение ИИ в тестировании:
Пойдёте цикл автоматизации с поддержкой ИИ: от генерации тест-кейсов и структуры проекта до создания сложных данных, написания кода по шаблону Page Object и аналитики. Темы: Тест-дизайн, Page Object, Тестовые данные, Анализ логов:
Тест-дизайн и документация.
Научитесь формулировать запросы для генерации тест-кейсов и чек-листов на основе требований. Сможете составлять матрицу покрытия (Traceability Matrix) и группировать тесты по модулям с помощью ИИ
Код автотестов и классы Page Object.
Поймёте, как использовать ИИ для генерации структуры Python-проекта, документации (README) и классов Page Object. Начнёте создавать локаторы, методы действий и настройки уведомлений, а также параметризовать тесты с помощью промптов
Генерация данных и SQL-скриптов.
Разберётесь с запросами для сложных данных (JSON/XML), валидных персональных данных и SQL-скриптов для наполнения БД. Научитесь генерировать снапшоты состояния базы данных с помощью ИИ
Анализ логов и метрик.
Сможете делегировать ИИ рутину по фильтрации логов и поиску причин падения тестов – timeout, assertion error. Научитесь интерпретировать метрики нагрузочного тестирования (JMeter, k6) и находить узкие места с помощью нейросетей
Сможете делегировать ИИ написание кода и SQL-скриптов, поиск багов в логах и отчётах нагрузочного тестирования
Тариф Базовый
7 проектов
Основы Python, объектно ориентированное программирование, юнит-тестирование, UI-тестирование, тестирование API, инфраструктура и архитектура, базы данных
Вебинары для разбора сложных тем
Цена 105000 руб.
СКАЧАТЬ СЛИВЫ КУРСОВ
Поможем освоить автоматизацию, чтобы избавиться от рутины и больше зарабатывать:
Освоите pytest, Selenium WebDriver и другие нужные инструменты
Поймёте, как строить процесс автоматизации внутри проекта
Будете перенимать опыт тестировщиков из Яндекса и других крупных IT-компаний
Сможете заниматься в удобное время и совмещать учёбу с работой
Поймёте, как и в каком направлении развивать карьеру
Кому подойдёт курс:
Начинающим тестировщикам, которые хотят повысить квалификацию – получите новые навыки, которые помогут найти работу или получить повышение на текущем месте
Опытным ручным тестировщикам – сможете полностью перейти в автоматизацию: писать автотесты для веб-приложений и API, проводить юнит-тесты, развивать инфраструктуру проекта
Тем, у кого мало или совсем нет опыта в программировании – познакомитесь с основами Python и выйдете на новый уровень в тестировании
Если уже знакомы с QA и хотите руководить – узнаете, как строить и оптимизировать QA/QC-процессы, а также лидировать техническое развитие
Зачем инженеру по ручному тестированию учиться автоматизации:
Избавитесь от рутины – автоматизация позволит избежать рутинных проверок и ускорить тестирование задач
Освоите новые инструменты и технологии – станете конкурентоспособнее: VS Code, Pytest, Git, DevTools, Selenium WebDriver, Allure, XPath, CSS, Консоль
Сможете больше зарабатывать – зарплаты автоматизаторов почти в 2 раза выше, чем у инженеров по ручному тестированию: Manual ~70 000 руб., Automation ~150 000 руб., Senior automation ~250 000 руб.
Чему вы научитесь:
Автоматизировать тестирование – как веб-приложений, так и API – для этого освоите pytest, Selenium WebDriver, Git, XPath, CSS и Allure
Писать код на Python – поймёте, как устроен язык, изучите его базовый синтаксис, напишете небольшое приложение
Проводить юнит-тесты – создавать моки и стабы, использовать Spy, разрывать зависимости
Выстраивать процесс автоматизации – разберётесь в инфраструктуре и архитектуре приложений, чтобы покрывать их тестами на всех уровнях
Усилите свои хардскилы с помощью ИИ. Научитесь использовать нейросети, чтобы:
Генерировать классы Page Object, локаторы и методы для Pytest
Создавать тестовые данные и mock-объекты для любых сценариев
Автоматически составлять матрицу покрытия требований
Выявлять пропущенные кейсы
Быстро анализировать ошибки в логах
Составлять рекомендации по исправлению багов
Как вы будете учиться:
Будете изучать наглядную теорию и сразу отрабатывать её в тренажёре.
Заниматься можно в любое удобное время: сначала объяснят теорию понятным языком, а потом вы закрепите её в заданиях с автоматической проверкой – можно сразу увидеть ошибки, исправить их, попробовать ещё раз
Встречаться с опытными автоматизаторами на вебинарах.
Каждый спринт специалисты проводят вебинары, где разбирают сложные темы и интересные кейсы, делятся опытом, отвечают на вопросы. После вебинара пришлют запись, а всё, что не успеете спросить, можно обсудить в общем чате
Делать проекты и получать подробную обратную связь.
В течение курса вы сможете сделать и добавить в портфолио 7 проектов. Каждый из них проверит тестировщик с большим опытом в автоматизации и даст подробную обратную связь, с которой проще развиваться
Программа:
Бесплатное введение
Узнаете чуть больше о курсе и о том, как проходит учёба: оцените подачу материала и тренажёр для написания кода. Введение поможет понять, подходит ли вам такой формат.
Основы Git
Настроите Git, разберёте основные команды: ветвление и слияние изменений. Погрузитесь в работу с GitHub и подготовитесь к первому проекту.
Основы Python
Познакомитесь с базовыми конструкциями языка: классами и объектами, функциями, ветвлениями и так далее. Будете сразу применять знания на практике – писать код внутри уроков и в среде разработки VS Code.
ООП: наследование и полиморфизм
Изучите основы объектно-ориентированного программирования (ООП). Это принципы, которые помогают решать сложные задачи, настраивать методы и классы, создавать логичные иерархии. ООП помогает писать программы, которые легко поддерживать и проверять.
ООП: инкапсуляция
Продолжите изучать ООП. После этого модуля сможете решать комплексные сложные задачи в коде. Чтобы закрепить полученные навыки, напишете небольшое приложение.
Юнит-тестирование
Освоите важную часть автоматического тестирования – фреймворк pytest. Его используют, чтобы не писать каждый раз код с нуля. Начнёте работать в pytest сначала с самыми простыми тестами – юнит-тестами. Потом узнаете, как в pytest тестировать веб.
UI-тестирование
Научитесь автоматизировать проверки, которые обычно проводятся вручную через браузер. Для этого изучите Selenium – с его помощью программы с автотестами «нажимают» на кнопки и «заполняют» поля ввода. Примените всё, что узнали о Python, для тестирования веб-приложений.
Page Object Model
Узнаете, как улучшать автотесты с помощью паттерна проектирования Page Object Model. Он помогает выстраивать правильную структуру тестов, чтобы их было легче читать и поддерживать. Построите отчёты о тестировании с помощью инструмента Allure, который предоставляет наглядную статистику о проверках.
Тестирование API
Узнаете, как автоматизировать тестирование API. Научитесь применять Postman и Swagger для автоматизации, писать несколько видов запросов. Потренируетесь работать с моками и стабами – заглушками, которые имитируют поведение реальных сервисов.
Архитектура
Мало покрыть приложение тестами, нужно позаботиться о том, чтобы процесс тестирования был исправен. Поэтому в этом модуле вы научитесь оценивать, насколько полно функциональность покрыта тестами. Это нужно, чтобы не было проблем при автоматизации.
Итоговый проект
Это проект, который объединит весь изученный материал. Вам предстоит покрыть тестами веб-приложение, API и написать юнит-тесты на отдельную функциональность.
Дополнительный модуль. Основы работы с базами данных
Это дополнительный модуль, в котором вы узнаете, как устроены базы данных, напишете SQL-запросы, научитесь агрегировать данные и связывать несколько таблиц. Также узнаете, как группировать и сортировать данные в таблицах.
Дополнительный модуль. Принципы работы с ИИ
Начнёте рационально применять искусственный интеллект. Узнаете ограничения моделей. Научитесь писать точные промпты.
Дополнительный модуль. Применение ИИ в тестировании
Пройдёте цикл автоматизации с поддержкой ИИ: от генерации тест-кейсов и структуры проекта до создания сложных данных, написания кода по шаблону Page Object и аналитики.
Спойлер: Полная программа
Бесплатное введение:
Узнаете чуть больше о курсе и о том, как проходит учёба: оцените подачу материала и тренажёр для написания кода. Введение поможет понять, подходит ли вам такой формат.
Основы Git:
Настроите Git, разберёте основные команды: ветвление и слияние изменений. Погрузитесь в работу с GitHub и подготовитесь к первому проекту.
Настройка окружения и знакомство с командной строкой.
Что такое Git. Как работать с командной строкой – навигация и советы. Операции с папками и файлами: создание, копирование, перемещение, чтение и удаление. Эффективная работа с командной строкой. Установка и настройка Git
Работа с Git.
Инициализация репозитория и добавление файлов. Создание первого коммита. Знакомство с историей коммитов и GitHub. Регистрация на GitHub. Создание удалённого репозитория. Что такое SSH. SSH-ключ: генерация и привязывание к GitHub. Связывание и синхронизация локального и удалённого репозитория
Основы работы с ветками в Git.
Скачивание и клонирование репозитория. Выполнение Fork. Создание ветки
Основы Python:
Познакомитесь с базовыми конструкциями языка: классами и объектами, функциями, ветвлениями и так далее. Будете сразу применять знания на практике – писать код внутри уроков и в среде разработки VS Code.
Как устроено обучение.
Сроки и дедлайны. Как всё организовано. Что поможет справиться. Ошибки и ответственность
Знакомство с Python.
Язык Python. Вывод на экран. Пробелы в выводе на экран. Переменные. Как называть переменные. Константы. Типы данных: числа и строки. Операции с целыми числами. Конкатенация строк. Форматирование строк. Преобразование типов. Дробные числа
Ветвления.
Логические выражения. Тип данных bool. Ветвление кода. Ветвление кода с else. Множественные ветвления. Логические операции. Приоритет логических операторов
Списки.
Знакомство со списками. Длина списка и индексы. Списки и индексы: практика. Операции со списками: append(), insert() и remove(). Операции со списками: pop() и in. Сложение списков. Списки списков и копирование. Операции со списками: практика
Циклы.
Циклы. Диапазоны от и до. Функция reversed(). Перебор через обратный срез списка. Вложенные циклы. Цикл с условием. Циклы: практика
Операции со строками.
Длина строки, индексы и подстроки. Метод split(). Метод replace()
Словари и коллекции.
Что такое словарь. Как получить и изменить значение в словаре. Как добавить элементы в словарь. Метод get(). Методы keys() и values(). Перебор элементов в словаре. Как проверить наличие элемента. Словари: практика
Функции.
Функция. Как объявить и вызвать функцию. Аргументы и параметры. Возврат значений из функции. Значение по умолчанию и разные виды аргументов. Библиотеки. Вызов функции из функции. Ошибки и их обработка. Ошибки в списках и словарях. Функции: практика
Классы и объекты.
Классы и объекты. Как создать класс. Как создать объект. Ошибка AttributeError. Как объявить и вызвать метод. Встроенные методы: __dict__. Как взаимодействуют классы
VS Code.
Командная строка. Как запустить Python в командной строке. Среда разработки VS Code. Как создать проект. Интерфейс VS Code. Запуск и отладка проекта
Решите несколько комплексных задач на Python. Напишете программы, которые печатают текст, считают время и составляют таблицы
ООП: наследование и полиморфизм:
Изучите основы объектно-ориентированного программирования (ООП). Это принципы, которые помогают решать сложные задачи, настраивать методы и классы, создавать логичные иерархии. ООП помогает писать программы, которые легко поддерживать и проверять.
Наследование.
Что такое ООП. Наследование. Наследование с конструктором. Функция super(). Переопределение методов. Переопределение методов: меняется сигнатура. Переопределение и super(). Полиморфизм
Множественное наследование.
Множественное наследование. Множественное наследование с конструктором. Множественное наследование и super(). Ромбовидное наследование. Миксины. Наследование: практика
Статические методы.
Что такое статический метод. Как вызвать статический метод через класс. Как применять статический метод на практике
Методы класса.
Что такое методы класса. Как применять методы класса
Область видимости.
Область видимости. Когда какую область видимости использовать
С помощью принципов ООП решите несколько комплексных задач на Python
ООП: инкапсуляция:
Продолжите изучать ООП. После этого модуля сможете решать комплексные сложные задачи в коде. Чтобы закрепить полученные навыки, напишете небольшое приложение.
Лямбда-функции.
Что такое лямбда-функции. Выражение и аргументы лямбда-функций. Функция filter(). Функция map()
Инкапсуляция.
Модификаторы доступа. Модификатор private. Что такое инкапсуляция. Геттеры и сеттеры. Свойства. Инкапсуляция: практика
Обработка исключений.
Что такое исключения. Как обрабатывать исключения. Разные типы исключений и их обработка. Как определить тип исключения. Продвинутая обработка исключений. Вызов исключений. Как создать исключение. Обработка исключений: практика
Напишете консольное приложение с помощью принципов ООП и VS Code
Юнит-тестирование:
Освоите важную часть автоматического тестирования – фреймворк pytest. Его используют, чтобы не писать каждый раз код с нуля. Начнёте работать в pytest сначала с самыми простыми тестами – юнит-тестами. Потом узнаете, как в pytest тестировать веб. Темы: Git, Консоль, Pytest, Юнит-тесты:
Консоль.
Командная строка: начало работы. Подключение к удалённому серверу. Как переходить по каталогам. Как управлять файлами и папками. Как создавать и удалять файлы. Как копировать и перемещать файлы. Сокращённые команды. Работа с текстовыми файлами. История и полезные команды. Фильтрация содержимого файлов. Как быстро работать в командной строке
Продвинутая командная работа в Git.
Пререквизиты. Fast-forward. Git push. Модели веток. Feature-branch-модель. Pull request и code review. Работа с PR. Разрешение конфликта
Основы юнит-тестов и pytest.
Фреймворк pytest. Что такое юнит-тесты. Пирамида тестирования. Базовые правила тестов. Как называть юнит-тесты. Как установить pytest. Структура теста в pytest
Ассерты.
Что такое assert. Базовые assert. Как покрыть тестами метод. Как покрыть тестами класс. Как называть файлы для тестов. Как называть тесты. Как называть все элементы в тестах
Параметризация.
Что такое параметризация. Как написать параметризованный тест. Параметризация: практика
Фикстуры.
Фикстуры. Особенности фикстур. Параметры scope и autouse
Оценка покрытия.
Оценка покрытия. Как посчитать покрытие
Покроете юнит-тестами небольшое консольное приложение и выложите работу в Git
UI-тестирование:
Научитесь автоматизировать проверки, которые обычно проводятся вручную через браузер. Для этого изучите Selenium – с его помощью программы с автотестами «нажимают» на кнопки и «заполняют» поля ввода. Примените всё, что узнали о Python, для тестирования веб-приложений.
Архитектура веб-приложений.
Клиент-серверная архитектура. Веб-приложение. URL. Протоколы HTTP и HTTPS. Структура HTTP-запроса. Структура HTTP-ответа. Веб-страница: HTML. HTML: теги и атрибуты. Веб-страница: CSS. Веб-страница: JavaScript. DOM
Devtools.
Поиск элементов в Devtools. Работа с разрешениями. Просмотр запросов. Куки
Введение в UI-тестирование.
Что такое UI-тесты. Пирамида тестирования. UI-тесты: преимущества и недостатки
Selenium: поиск элементов.
Что такое Selenium WebDriver. Что такое локатор. Основные теги. Что такое XPath. Поиск по элементу и атрибуту. Узлы. Значение элемента. Список элементов. Усечённый список. Видимые и невидимые элементы. Относительный и абсолютный путь. Вложенные элементы по относительному пути. Сложный поиск. Составные локаторы. Поиск по CSS
Selenium: базовые методы.
Подключение Selenium в VS Code. Открыть и закрыть страницу. Найти элемент. Кликнуть по элементу. Задать ожидания. Заполнить поле ввода. Получить текст элемента. Перейти к элементу. Работа с куками из тестов. Selenium: практика. Структура проекта
Протестируете UI-интерфейс сервиса заказа еды Stellar Burgers с помощью Selenium и Devtools, покроете тестами несколько веб-страниц
Page Object Model:
Узнаете, как улучшать автотесты с помощью паттерна проектирования Page Object Model. Он помогает выстраивать правильную структуру тестов, чтобы их было легче читать и поддерживать. Построите отчёты о тестировании с помощью инструмента Allure, который предоставляет наглядную статистику о проверках.
Page Object.
Что такое Page Object Model. Как задать класс page object. Работа с локаторами. Работа с методами. Как объединять методы в шаг. Методы setup_class() и teardown_class(). POM: практика
Allure.
Отчёты о тестировании. Установка Allure. Allure: декораторы
Структура проекта.
Файл с внешними зависимостями. Структура проекта с POM. Как улучшить организацию проекта
Напишете тесты для веб-приложения с помощью Page Object Model, построите информативный отчёт о тестировании в Allure
Тестирование API:
Узнаете, как автоматизировать тестирование API. Научитесь применять Postman и Swagger для автоматизации, писать несколько видов запросов. Потренируетесь работать с моками и стабами – заглушками, которые имитируют поведение реальных сервисов.
Введение в API.
Архитектура приложений. Что такое API. Архитектурные решения – REST. HTTP: структура запросов и ответов. JSON. Тестирование API. Тестирование сервера: Postman. Документация API. Swagger. Авторизация
Как тестировать API с помощью Python.
Зачем автоматизировать тестирование API. Флоу автоматизированного тестирования API. Библиотека Requests. Метод GET. Десериализация. Метод POST. Сериализация. Метод DELETE. Метод PATCH
Подготовка к автоматизации.
Как подготовить тестовый стенд. Как написать тест-кейс. Как подготовить данные. Как хранить данные
Моки.
Изоляция в тестах. Что такое мок. Как создать мок. Как замокировать вызов. Как проверить вызовы мока. Как замокировать внешний сервис. Моки в UI-тестах. Моки в API-тестах
Протестируете API учебного веб-приложения
Архитектура:
Мало покрыть приложение тестами, нужно позаботиться о том, чтобы процесс тестирования был исправен. Поэтому в этом модуле вы научитесь оценивать, насколько полно функциональность покрыта тестами. Это нужно, чтобы не было проблем при автоматизации. Темы: Архитектура приложений, Флоу работы автоматизатора:
Архитектура.
Монолитная архитектура. Микросервисная архитектура. Виды межсервисного взаимодействия. Архитектурные паттерны
Как покрывать тестами разные уровни программы.
Сколько тестов нужно на каждый уровень пирамиды. Когда запускают тесты разных уровней. Оценка покрытия по каждому уровню
Рабочие задачи автоматизатора.
Какие задачи решает автоматизатор. Автоматизация новой фичи. Обновление устаревших тестов. Автотесты для новой системы. Практика
Подготовка к итоговому проекту.
Юнит-тесты: повторение. Тестирование API: повторение. Тестирование веб-приложения: повторение. Поделись впечатлениями о проекте
Подытожите знания и выполните задания на повторение юнит-тестов, тестирования API и веб-приложений
Итоговый проект:
Это проект, который объединит весь изученный материал. Вам предстоит покрыть тестами веб-приложение, API и написать юнит-тесты на отдельную функциональность.
Дополнительный модуль. Основы работы с базами данных:
Это дополнительный модуль, в котором вы узнаете, как устроены базы данных, напишете SQL-запросы, научитесь агрегировать данные и связывать несколько таблиц. Также узнаете, как группировать и сортировать данные в таблицах. Темы: SQL-запросы, Тестирование баз данных:
Базы данных.
Тестирование БД. Реляционные БД. SQL-запросы. Срезы данных в SQL. Агрегирующие функции. Изменение типов. Группировка данных. Сортировка данных. БД и консоль. Изменение данных: INSERT, UPDATE, DELETE. Снятие дампов. Тест: основы баз данных
Дополнительный модуль. Принципы работы с ИИ:
Начнёте рационально применять искусственный интеллект. Узнаете ограничения моделей. Научитесь писать точные промпты.
Принципы и ограничения.
Поймёте, почему нейросети ошибаются при генерации кода и как этого избежать. Научитесь проводить ревью ИИ-решений: находить несуществующие функции и логические ошибки
Выбор инструментов.
Сравните облачные и локальные модели, IDE-плагины и AI-чаты. Научитесь подбирать ИИ-инструменты под конкретные задачи, исходя из их стоимости и функциональности
Основы промптинга.
Разберёте структуру запроса: контекст, задачу, формат. Освоите zero-shot, few-shot, chain-of-thought, чтобы получать точные и предсказуемые ответы
Планирование и декомпозиция.
Узнаете, как разбивать объёмные задачи на подзадачи, а также планировать рабочие и личные проекты с помощью ИИ
Освоите промпт-инжиниринг, научитесь выбирать оптимальные ИИ-решения и выявлять галлюцинации
Дополнительный модуль. Применение ИИ в тестировании:
Пойдёте цикл автоматизации с поддержкой ИИ: от генерации тест-кейсов и структуры проекта до создания сложных данных, написания кода по шаблону Page Object и аналитики. Темы: Тест-дизайн, Page Object, Тестовые данные, Анализ логов:
Тест-дизайн и документация.
Научитесь формулировать запросы для генерации тест-кейсов и чек-листов на основе требований. Сможете составлять матрицу покрытия (Traceability Matrix) и группировать тесты по модулям с помощью ИИ
Код автотестов и классы Page Object.
Поймёте, как использовать ИИ для генерации структуры Python-проекта, документации (README) и классов Page Object. Начнёте создавать локаторы, методы действий и настройки уведомлений, а также параметризовать тесты с помощью промптов
Генерация данных и SQL-скриптов.
Разберётесь с запросами для сложных данных (JSON/XML), валидных персональных данных и SQL-скриптов для наполнения БД. Научитесь генерировать снапшоты состояния базы данных с помощью ИИ
Анализ логов и метрик.
Сможете делегировать ИИ рутину по фильтрации логов и поиску причин падения тестов – timeout, assertion error. Научитесь интерпретировать метрики нагрузочного тестирования (JMeter, k6) и находить узкие места с помощью нейросетей
Сможете делегировать ИИ написание кода и SQL-скриптов, поиск багов в логах и отчётах нагрузочного тестирования
Тариф Базовый
7 проектов
Основы Python, объектно ориентированное программирование, юнит-тестирование, UI-тестирование, тестирование API, инфраструктура и архитектура, базы данных
Вебинары для разбора сложных тем
Цена 105000 руб.
СКАЧАТЬ СЛИВЫ КУРСОВ
Для возможности скачивать складчины и сливы курсов нужно зарегистрироваться
Возможно, Вас ещё заинтересует:
- Безотказный Подход [Доступ на 3 месяца] [Андрей Войников]
- Как написать промпт [Федор Донован]
- Я - Создатель [Виктор Кувшинов]
- Инженерия интеллекта от промта к системам ИИ [Александр Мироненко]
- Анатомия на пальцах. Методическое пособие для начинающих косметологов [Диана Почипова]
- Энциклопедия кукольной одежды. Все техники и приемы шитья [Таэко Секигути]
- [Эксмо] Мифы о смерти и загробных мирах
- Донецкая и Луганская Республики. Наследие и будущее родного края [Наталья Шаховская]
- ИИ-автоматизация: проектирование и запуск агентных систем [karpov.courses]
- Конструктор постов для онлайн-проекта [Дмитрий Зверев]