Скачать Курс по построению процессов автоматизации тестирования на Python для web и rest api проектов с нуля. Тариф Web abtomation [Алексей Коледачкин]

  • Складчина создана: Дата начала
Информация
Цена: 298 РУБ
Организатор: Kail Kail
Список участников
  • 1.
    truekot1
  • 2.
    EvyP
Kail
Kail
Организатор
Проверенный
Организатор
Регистрация
09.04.2020
Сообщения
345 987
Реакции
30 681
Монеты
1 191
Оплачено
0
Баллы
0
  • #SkladchinaVip
  • #1
Курс по построению процессов автоматизации тестирования на Python для web и rest api проектов с нуля. Тариф Web abtomation [Алексей Коледачкин]
Ссылка на картинку
Модуль 1 - Python

14 занятий
Занятие 1 - Введение
  • Установка Python
  • Установка IDE и полезных расширений
  • Создание виртуального окружения
  • Пишем первую программу "Hello AQA-PROKA4"
  • Домашнее задание
Занятие 2 - Переменные и типы данных
  • Что такое и для чего нужны
  • Обьявление переменных
  • Именование переменных
  • Типы данных в Python
  • Классификация по типам данных
  • Преобразование типов
  • Переопределение переменной
  • Арифметические операции
  • Операции сравнения
  • Домашнее задание
Занятие 3 - Строки
  • Создание строки
  • Доступ к символам
  • Срезы строк
  • Получение длины строки
  • Конкатинация строк
  • F-строки
  • Экранирование
  • Базовые методы строк
  • Проверка на содержимое строки
  • Домашнее задание
Занятие 4 - Списки
  • Что такое и для чего нужны списки в автоматизации
  • Создание списка
  • Получение элементов списка
  • Добавление элементов в список и их замена
  • Удаление элементов из списка
  • Получение длины списка
  • Срезы списков
  • Сложение списков
  • Копирование списков
  • Домашнее задание
Занятие 5 - Условные операторы
  • Логические операции
  • Что такое условные операторы
  • Оператор if
  • Оператор else
  • Оператор elif
  • Логические операции в условиях
  • Тернарный оператор
  • Домашнее задание
Занятие 6 - Словари
  • Что такое и для чего нужны словари в автоматизации
  • Создание словаря
  • Доступ к элементам словаря по ключу
  • Обновление элементов словаря
  • Удаление элементов словаря
  • Получение ключей и значений
  • Проверка на наличие ключей
  • Перебор словаря
  • Домашнее задание
Занятие 7 - Циклы
  • Что такое и для чего нужны циклы в автоматизации
  • Цикл for
  • Цикл while
  • Остановка цикла
  • Домашнее задание
Занятие 8 - Работа с файлами
  • Использование функции open()
  • Обычное и построчное чтение файла
  • Запись и перезапись файла
  • Использование контекстного менеджера
  • Проверка существования файла
  • Удаление файла
  • Домашнее задание
Занятие 9 - Функции
  • Что такое и для чего нужны функции в автоматизации
  • Создание и вызов функций
  • Аргументы функции
  • Дефолтные значения аргументов
  • Получение данных из функции
  • Функция как аргумент
  • Переменное число аргументов
  • Лямбда функции в автоматизации
  • Декораторы
  • Домашнее задание
Занятие 10 - Обьектно ориентированное программирование. Часть 1
  • Введение в ООП и его концепция
  • Поля, атрибуты, методы и свойства класса
  • Инициализация обьекта класса
  • Что такое self-параметр
  • Икапсуляция на примере автоматизации
  • Домашнее задание
Занятие 11 - Обьектно ориентированное программирование. Часть 2
  • Полиморфизм на примере автоматизации
  • Наследование
  • Замена и добавление атрибутов дочернего класса
  • Типы методов в Python
  • Домашнее задание
Занятие 12 - Дополнения
  • Функция isinstance()
  • Функции getattr(), setattr()
  • lambda-функция
  • Функция enumerate()
  • List comprehenstions
  • Аннотации типов
Занятие 13 - Самостоятельная работа
  • Live-кодинг задачи с интервью
  • Разбор решений
Занятие 14 - Работа с базами данных
  • Подключение к базе данных
  • Что такое курсор
  • Запросы и получение данных
  • Закрытие подключения
Модуль 2 - Selenium

15 занятий
Занятие 1 - Введение в Selenium

  • Что такое Selenium и его компоненты
  • Создание виртуального окружения
  • Установка Selenium и зависимостей
  • Инициализация Chromedriver и Firefox
  • Домашнее задание
Занятие 2 - Навигация браузера и поиск элементов
  • Управление навигацией браузера
  • Спящий код
  • Что такое WebElement
  • Поиск веб-элемента и его особенности. Часть 1
  • Поиск элементов без By
  • Поиск множества элементов и работа с ними
  • Ваш первый клик
  • Домашнее задание
Занятие 3 - Xpath и получение данных из браузера
  • Получение URL-страницы
  • Получение заголовка страницы
  • Получение всего содержимого страницы
  • Валидация данных через assert
  • Что такое Xpath и как с ним работать
  • Xpath - Глобальный поиск
  • Xpath - Поиск по уровню вложенности
  • Xpath - Поиск по порядковому номеру
  • Xpath - Поиск по атрибутам
  • Xpath - Поиск по содержимому
  • Xpath - Поиск parent по child
  • Рекомендации по xpath
  • Инспектирование исчезающих элементов
  • Домашнее задание
Занятие 4 - Работа с полями ввода и клавиатурой. Получение атрибутов элементов
  • Получение состояний элементов
  • Ввод данных в поля ввода
  • Получение атрибутов полей ввода и других элементов
  • Очистка полей ввода
  • Работа с клавиатурой
  • Копирование и вставка
  • Тренажеры
  • Домашнее задание
Занятие 5 - Опции браузера. Загрузка и скачивание файлов
  • Первое знакомство с опциями браузера
  • Работа с обьектом опций
  • Основные базовые опции браузера
  • Стратегия загрузки страницы
  • Загрузка файлов
  • Скачивание файлов
  • Домашнее задание
Занятие 6 - Ожидания
  • Неявные ожидания
  • Явные ожидания
  • Ожидаемые условия
  • Кастомные сообщения об ошибках
  • Работа со скриншотами
  • Домашнее задание
Занятие 7 - WebDriver-мод и User-agent. Работа с Alerts
  • Что такое и как использовать User-agent
  • Отключение режима WebDriver
  • Что такое Alert и как с ним работать
  • Принять / отклонить Alert
  • Получение текста из Alert
  • Ввод данных в Alert
Занятие 8 - Работа с Cookies
  • Что такое cookies
  • Получение cookies
  • Добавление cookies
  • Замена cookies
  • Сохранение cookies в файл
  • Чтение cookies из файла
  • Алгоритм авторизации через cookies
  • Домашнее задание
Занятие 9 - Радио, чек-боксы, выпадающие списки и мультиселекты
  • Что такое чек-бокс
  • Клик на чек-бокс
  • Статусы чек-бокса
  • Нюансы работы с чек-боксами
  • Радио-кнопки
  • Кодовая база для работы с dropdown
  • Стандартный dropdown
  • Выборка из dropdown
  • Современный dropdown
  • Работа с мультиселектом
  • Домашнее задание
Занятие 10 - Окна, вкладки и iframes
  • Открытие нового окна/вкладки
  • Работа с дескриптором
  • Получение всех открытых окон/вкладкок
  • Переключение между окнами/вкладками
  • Закрытие окон и вкладок
  • Работа с iframes
  • Домашнее задание
Занятие 11 - Actions Chains
  • Что такое Action API
  • Фундамент для работы
  • Клик через цепочку действий
  • Двойной клик
  • Клик правой кнопкой мыши
  • Наведение на элемент
  • Пауза в цепочке действий
  • Скролл к элементу
  • Перетаскивание (drag and drop)
  • Клик с удержанием
  • Отпускаем кнопку мыши
  • Работа с координатами
Занятие 12 - Горизонтальные слайдеры
  • Подход к работе
  • Реализация разных вариантов
  • Примеры с занятия
  • Домашнее задание
Занятие 13 - Работа с таблицами
  • Основные сущности в таблицах
  • Реализация через создание хендлера
  • Xpath - Относительный поиск по веб-элементам
  • Реализация интерфейса управления таблицей
  • Стратегия ленивой загрузки
  • Домашнее задание
Занятие 14 - Работа с Datepicker и BasicAuth
  • Обход BasicAuth
  • Создание интерфейса для работы с datepicker
  • Использование JS в Selenium
Занятие 15 - Профили, расширения браузера и работа с Proxy
  • Создание профилей
  • Использование профилей
  • Добавление расширений
  • Использование proxy без авторизации
  • Использование proxy с авторизацией
Модуль 3 - Pytest & Allure Report

11 занятий
Занятие 1 - Введение в Pytest

  • Что такое pytest
  • Уставновка pytest и других зависимостей
  • Правила создания тестов
  • Создание тестовых классов (наборов тестов)
  • Создание тестовых методов (тестов)
  • Запуск первого теста
  • Домашнее задание
Занятие 2 - Пред- и постусловия | Базовые параметры запуска
  • Пред- и постусловия в тестах
  • Базовые параметры запуска
  • Запуск тестов по их названию
  • Дебаг тестов
  • Домашнее задание
Занятие 3 - Перезапуск, остановка и маркировка тестов
  • Перезапуск упавших тестов после тестового прогона
  • Перезапуск упавших тестов сразу после их падения во время выполнения
  • Остановка тестового прогона после падения N тестов
  • Маркировка тестов
  • Запуск маркированных тестов
  • Домашнее задание
Занятие 4 - Зависимые тесты, параметризация и паралеллизация
  • Параметризация тестов - запуск одного и того же теста с разными входными данными
  • Перебор всех комбинаций параметров через параметризацию
  • Работа с зависимыми тестами
  • Параллельный запуск тестов в несколько потоков
  • Сброс тестов с логированием причины
  • Домашнее задание
Занятие 5 - Разработка негативных тестов
  • Как устроены негативные тесты
  • Подход создания негативных тестов
  • Разработка негативных тестов для UI и API
  • Домашнее задание
Занятие 6 - Фикстуры. Часть 1
  • Файл conftest.py
  • Что такое фикстура
  • Использование фикстур как аргумент тестового метода
  • Получение данных из фикстуры через return
  • Использование фикстур через декоратор и получение данных через request.cls
  • Получение данных через namedtuple
  • Получение данных через dataclasses
  • Кастомные имена фикстур
  • Домашнее задание
Занятие 7 - Фикстуры. Часть 2
  • Авто-использование фикстур
  • Пред- и постусловия в фикстурах с помощью yield
  • Область видимости фикстур
  • Домашнее задание
Занятие 8 - Фикстуры. Часть 3
  • Обьект request в фикстурах
  • Выборочное применение фикстур
  • Параметризация фикстур
  • Косвенная параметризация
  • Домашнее задание
Занятие 9 - Создание собственных опций vs переменных окружения
  • Пользовательские pytest-опции
  • Переменные окружения
  • Сравнение
  • Конфигурационный файл - pytest.ini
  • Домашнее задание
Занятие 10 - Создание Pytest-раннера
  • Что такое и зачем нужен runner
  • Создание раннера и мультипроцессинг
  • Junit-репорты и сбор результатов тестирования
  • Домашнее задание
Занятие 11 - Allure Report
  • Установка Allure
  • Маркировка тестов по сьют-подходу
  • Марикровка тестов по фича-подходу
  • Маркировка шагов
  • Генерация отчета
  • Приложение файлов, скриншотов и тестовых артефактов к отчету
  • Управление файлом environment.properties
  • Домашнее задание
Модуль 4 - Паттерны

8 занятий
Занятие 1 - Page Object Model (POM). Часть 1
  • Что такое паттерны и зачем они нужны
  • Знакомство с Page Object
  • Основные сущности
  • Цепочка запуска
  • Первый тест в POM
Занятие 2 - Page Object Model (POM). Часть 2
  • Работа с requirements.txt
  • Работа с данными в POM
  • Allure в Page Object
  • Мультистраничные тесты
  • Декларативный и императивный подходы
  • Работа с переменными окружения
  • Хранение тестовых данных
Занятие 3 - Page Components
  • Особенности использования page component
  • Выделение компонентов страницы
  • Пишем тесты с компонентным подходом
Занятие 4 - Разработка хелпера. Мультиюзерность в POM
  • Построение мультиюзерности в рамках PageObject/Components
  • Разработка и внедрение хелперов для ускорения работы
Занятие 5 - Работа с почтой и генерация тестовых данных
  • Знакомство с Faker
  • Работа с почтой через Python
Занятие 6 - Практика 1 (Live-кодинг)
  • Поднимаем с нуля PageObject
  • Применение хелперов в автоматизации
Занятие 7 - Практика 2 (Live-кодинг)
  • Пишем тесты в рамках Page Object
Занятие 8 - Практика 3 (Live-кодинг)
  • Пишем тесты в рамках Page Object
Модуль 4 - REST API

5 занятий
Занятие 1 - Введение в requests
  • Как читать документацию к API
  • Что такое requests
  • Основные сущности
  • Работа с запросами (GET, POST, PUT, PATCH, DELETE)
  • Построение цепочки запросов
  • Валидация статус-кода ответа
  • Получение данных из ответа
Занятие 2 - Pydantic. Часть 1
  • Что такое Pydantic
  • Работа с моделями данных (data class) и json
  • Автоматическое преобразование типов
  • Вывод и отображение ошибок
  • Наличие/отсутствие полей в классах и json-обьектах
  • Опциональные поля
Занятие 3 - Pydantic. Часть 2
  • Вложенные модели данных
  • Валидация списков
  • Реализация extra-модели
  • Создание кастомных валидаторов полей
Занятие 4 - Построение архитектуры для автоматизации REST API проекта
  • Основные сущности
  • Архитектура построения сущности service
  • Упаковка headers, payloads и endpoints
  • Создание конфигов
  • Построение тестов
  • Подключение Allure
Занятие 5 - Практика
  • Построение архитектуры с нуля
  • Разработка позитивных тестов
  • Разработка негативных тестов
  • Обратный инженеринг
Модуль 6 - Docker

5 занятий
Занятие 1 - Введение в Docker
  • Что такое Docker
  • Основные сущности
  • Базовый алгоритм работы
  • Хранилище образов DockerHub и Registry
  • Docker в автоматизации тестирования
  • Установка Docker
Занятие 2 - Работа с образами
  • Этапы сборки образа
  • Необходимые инструкции Dockerfile
  • Сборка первого образа
  • Команды для работы с образом
  • Запуск первого контейнера
  • Авторизация в Docker Registry
Занятие 3 - Работа с контейнерами
  • Простой запуск контейнера
  • Запуск с переменными окружения
  • Управляемый запуск
  • Интереактивный и фоновый режимы
  • Просмотр списка контейнеров
  • Остановка и удаление контейнеров
  • Просмотр логов запущенного контейнера
  • Вход в запущенный контейнер
Занятие 4 - Сборка образа для автоматизации
  • Собираем образ для UI и API-тестов
  • Подготовка тестов к запуску в контейнере
  • Запуск тестов в контейнере
  • Копирование и маунтинг
  • Получение Allure-отчетов из контейнера
  • Файл .dockerignore
Занятие 5 - Работа с docker-compose.yml
  • Что такое docker-compose.yml
  • Изучение синтаксиса compose-файла
  • Пишем свой первый docker-compose
  • Запуск тестов через docker-compose
  • Оркестрация контейнеров
  • Интерактивный режим через docker-compose
Модуль 7 - Git

3 занятия
Занятие 1 - Введение в Git
  • Что такое Git
  • Скачивание и установка
  • Регистрация в Github и создание репозитория
  • Генерация SSH-ключа
  • Настройка токена авторизации
  • Настройка Git-профиля
  • Инициализация репозитория
  • Первый коммит
  • Основные операции
Занятие 2 - SublimeMerge + терминал
  • Что такое ветки
  • Создание, переключение и удаление веток
  • Слияние веток
  • Решение конфликтов
  • Перебазирование ветки
Занятие 3 - Работа с флоу
  • Пул-реквесты
  • Откат изменений
  • Работа с реальным флоу проекта
Модуль 8 - CI/CD

6 занятий
Занятие 1 - Введение в CI/CD
  • Что такое CI/CD
  • Общий принцип всех CI/CD систем
  • Высоко-уровневые и низко-уровневые системы
Занятие 2 - Gitlab CI. Часть 1
  • Что такое раннер
  • Синтаксис gitlab-ci.yml и основные сущности
  • Создание конфига запуска для UI и API тестов без использования Docker
  • Генерация Allure-отчетов и настройка хранения истории
  • Настройка executor и environment в Allure
Занятие 3 - Gitlab CI. Часть 2
  • Подключение сервисов к раннеру
  • Разбор структуры dind-раннера
  • Создание конфига запуска для UI и API тестов с использование dind-раннера
Занятие 4 - GitHub Actions
  • Базовый синтаксис config.yml и основные сущности
  • Создание достаточного конфига для UI и API-тестов
  • Запуск тестов в GutHub Actions
Занятие 5 - Circle CI
  • Базовый синтаксис config.yml и основные сущности
  • Создание достаточного конфига для UI и API-тестов
  • Запуск тестов в CircleCI
  • Получение Allure-отчета в артефактах
Занятие 6 - Интеграция с Allure TestOps
  • Обзор на Allure TestOps
  • Настройка интеграции с Github
  • Настройка интеграции с Gitlab
Модуль 9 - Test Framework

3 занятия
Занятие 1 - Интерфейс для работы с UI
  • Создание базовых файлов для UI
  • Создание и настройка конфигов
  • Реализация фикстур для UI
  • Создание тестовых файлов
  • Внедрение UI-хелперов
  • Настройка работы с Docker
Занятие 2 - Интерфейс для работы с БД
  • Создание БД-конфигов для Sqlite, MySQL и Postgress
  • Разработка БД-хелпера
  • Реализация фикстур для работы с БД
  • Разработка сценариев с запросами к БД
Занятие 3 - Интерфейс для работы с API
  • Создание API-конфигов
  • Разработка API-хелпера
  • Реализация фикстур для работы с API
  • Разработка сценариев с запросами к API
  • Разработка full-сценариев с UI, DB и API в связке
Модуль 11 - CV и подготовка к интервью

2 занятия
Занятие 1 - Составление CV
  • Взвешиваем свои сильные и слабые стороны
  • Разбираем CV-шаблон для рынков СНГ, ЕС и Канады
  • Составляем свое резюме
Занятие 2 - Частые вопросы на интервью. Live-кодинг задачи на Python
  • Разбор списка самых частых вопросов
  • Стратегия ответов на интервью
  • Разбор live-кодинг задач
WEB AUTOMATION
  • Онлайн-занятия с ответами на вопросы
  • Методические материалы
  • Практические домашние задания БЕЗ ПРОВЕРКИ
  • Тренажеры для практики
  • Чат группы
  • Доступ к модулю "Резюме и подготовка к интервью"
 
Зарегистрируйтесь , чтобы посмотреть скрытый авторский контент.
Поиск по тегу:
Теги
python автоматизации тестирования на python алексей коледачкин
Похожие складчины

Войдите или зарегистрируйтесь для участия в складчине

Вы должны быть авторизованны для просмотра и оценки материала

Создать аккаунт

Создать учетную запись займет не больше минуты!

Войти

Уже зарегистрированы? Просто войдите.