Введение в тему 0:02 Продолжение работы с автоматизацией тестирования. Фокус на фишках PyTest, помогающих задавать предусловия для тестов. Введение в фишку "параметрас" для запуска одного теста с разными тестовыми данными.
Пример использования параметраса 0:34 Создание теста для сайта Magento Software Testing Board. Проверка логина разными пользователями с разными паролями. Ожидание одинакового результата при разных тестовых данных.
Создание теста 2:42 Импорт необходимых библиотек и настройка драйвера. Поиск элементов на странице и заполнение полей логина и пароля. Проверка появления ошибки при неудачном логине.
Использование параметраса 6:27 Добавление декоратора "@parametrize" для параметризации теста. Указание переменной для хранения логинов и паролей. Передача списка тестовых данных в параметре.
Запуск теста с разными данными 10:17 Распаковка кортежей с логинами и паролями. Запуск теста с тремя разными наборами данных. Проверка результатов и анализ порядка выполнения тестов.
Улучшение отображения результатов 12:39 Добавление идентификаторов для каждого теста. Изменение синтаксиса для подписывания тестов. Повторный запуск теста для проверки новых результатов.
Управление отображением параметров 14:39 Можно управлять отображением параметров, таких как логин и пароль. Передача параметров в тест и их подписание. Использование кортежей для передачи параметров.
Приглашение на курс по автоматизации тестирования 15:29 Курс включает изучение Python и инструментов для автоматизации тестирования. Работа с Linux, Docker, CI/CD, GitHub и GitLab. Написание трех отчетных работ: программа на Python, проект по автоматизации OOP и проект по автоматизации UI.
Дополнительные возможности курса 16:24 Возможность стажировки после курса. Оплата курса частями. Ближайшее занятие запланировано на 9 октября.
Попарное тестирование 17:49 Создание пар для тестирования логинов и паролей. Использование списков для генерации пар. Написание функции для создания пар.
Использование сгенерированных пар 20:32 Передача сгенерированных пар в тест. Добавление параметров в список. Проверка работы теста с сгенерированными парами.
Тестирование страниц сайта 24:06 Тестирование открытия разных страниц сайта. Использование предусловий для открытия страниц. Написание тестов для проверки содержимого страниц.
Параметризация тестов 30:06 Параметризация тестов для открытия разных страниц. Использование одной текстуры для разных страниц. Изменение текстуры для параметризации.
Использование аргумента "request" 30:58 Аргумент "request" обязателен для использования. Через "request" приходит объект параметров "params". Параметры хранятся в переменной "request.params".
Обработка параметров 31:53 Параметры хранятся в переменной "request.params". Можно использовать условные операторы для обработки параметров. Пример: переход на разные страницы в зависимости от значения параметра.
Вызов фикстуры 32:59 В начале теста нужно вызвать фикстуру с нужным параметром. Используется параметр "params.page". Переменная "page" должна быть итерируемой сущностью.
Непрямая параметризация 34:48 Параметризация должна быть непрямой "indirect=true". Система ищет текстуру с соответствующим названием. Ограничения синтаксиса требуют использования квадратных скобок для параметров.
Тестирование с разными страницами 36:40 Два теста используют одну текстуру для подготовки данных. Тесты управляют данными, подготовленными текстурой. Пример: открытие страниц "save" и "new".
Запуск тестов 37:36 Запуск тестов через терминал. Проверка корректности работы тестов. Открытие нужных страниц.
Использование для тестирования данных из базы данных 38:51 Пример: проверка отображения книг и пользователей на сайте. Использование одной текстуры для получения данных из базы. Подстановка аргументов в запросы к базе данных.
Заключение 40:42 Одна текстура может выполнять запросы для множества тестов. Использование "indirect parameter" для вызова данных. Развитие профессиональных навыков через освоение новых технологий.