Создание проекта (фреймворка) - Page-Object model (POM). Стек: Python, Selenium, Pytest

preview_player
Показать описание
Хочешь получить практическое задание, основывающееся на этом видео?

Мой курс по тестированию и автоматизации:

------------------------------------------------

Для полноценной автоматизации тестирования все автотесты должны иметь какую-то структуру. В идеале, не должно быть сплошного копирования одного и того же кода. И в некоторых ситуациях, нужно делать так, чтобы тесты были понятны незнакомым с программированием коллегам. Всё это можно решить путем создания фреймворка, основанного на паттерне Page Object. В этом видео - основные его особенности.

--------------------------------------------

00:00 Привет
00:53 Простые тесты
03:03 Проблемы автотестов
05:23 Оптимизация тестов, создание структуры
08:20 Страницы - основа фреймворка
10:28 Описываем несуществующую страницу
12:19 Класс для каждой страницы
13:30 Описание элементов страницы
16:21 Тесты, основанные на фреймворке
27:43 Дополнительные способы описания элементов
30:02 Конечная структура
Рекомендации по теме
Комментарии
Автор

Спасибо за достаточно понятную, максимально структрурированную и полезную информацию

Кирилл-ьрз
Автор

Вот таких тем мало по паттерну! Спасибо!

aberich
Автор

Содержательно. После видео есть общая картина структуры🤝

elszhtp
Автор

Огромное спасибо за проделанную работу !!!

rmstr
Автор

Спасибо за видео, очень помогло, тем более бесплатное)

yuliapopova
Автор

Спасибо, что сэкономили время и нервы))

IvanTsanga
Автор

Hello 👋 hello , если не трудно можете пожалуйста залить это на гит хаб и скинуть ссылку .спасибо.

kevinkeegan
Автор

Спасибо! Очень полезный канал у вас! Поддержим крутой канал комментариями! ✌🤞

DemetriuszStrykowski
Автор

Отличное объяснение! Всё понятно, было бы здорово увидеть пример создания фреймворке общие, которые можно использовать для разных сайтов к примеру, либо фреймворк для самого pytest?

schmexus
Автор

Only your video l understand 😊OOП и class 😊

kevinkeegan
Автор

Возникает интересный эффект . Когда пишут browser.get - всё понятно, потому что так пишут во всех учебниках . А когда пишут
simple_page - всё становится не понятным даже для того кто умеет программировать . Пойди разберись кто чего понапридумывал на своём проекте . У всех всё будет по разному .

МихаилКорепанов-чд
Автор

Спасибо за видео. Подскажите, пожалуйста, а если в рамках одного теста будет использоваться несколько классов страниц (например, начали тест на одной странице, а закончили на другой), как в таком случае происходит инициализация объектов класса? Вначале в переменную присваиваем объект класса страницы main, делаем клик по переходу на вторую страницу с другим классом. В таком случае нужно опять создавать переменную и передавать в нее браузер?

SuperChakichaki
Автор

В моменте, когда ты в классе BasePage описываешь метод find 11:37 во время печати self.browser. на этом месте как-то можно сделать, чтобы выходили подсказки методов, как это реализовать?

inzoddex
Автор

Огромное спасибо за Ваш труд. Лучшие уроки по данной тематике.

У меня вопрос: как при запуске нового теста оставаться на той же уже открытой странице?

ramilhafiz
Автор

В vs code в терминале возникает ошибка from pages.simple_button import SimpleButtonPagе
E ModuleNotFoundError: No module named 'pages.simple_button'. Подскажите, пожалуйста, в чем может быть дело?

ЮлияСмыкова-чф
Автор

Добрый день. Подскажите, плиз, это нормально если создать base_page, потом унаследовав ее сделать Login_page, а после все страницы наследовать от Login page, Что бы вызывать методы логина от текущих страниц и не создавать экземпляр класса логин в тесте?

Ruslan-psrz
Автор

Весьма наглядно. Само видео требует тестов по проверке качества. К сожалению, в речи упоминаются ссылки, а по факту ссылки не появляются.
Спасибо Вам, что делитесь своими знаниями, хоть, на мой взгляд, и весьма высокомерно по отношению к джунам.

FimaMillston
Автор

Подскажите, есть в каком -то видео автотест с обращением к API и проверкой результата?

yuliapopova
Автор

Добрый день ! Подскажите, пожалуйста, почему может быть, если файл conftest лежит в корне проекта, то тест выдает ошибку из-за того, что фикстуры не найдены (импорт помогает, но должно без него ведь работать), а если файл conftest перенести в папку в тестами, то всё проходит корректно ? В чем причина, не могли бы вы мне подсказать ?

stone_
Автор

Здравствуйте, в vs code в терминале возникает ошибка "ModuleNotFoundError: No module named 'pages'", при том что в импорте все само подтягивается и показывает что все хорошо. Не могу разобраться(

zombiekiller