PYTHON_AUTOMATION_CORE

Содержание

Слайд 2

План урока 1) Что понадобится в плане инструментов? 2) Что такое

План урока

1) Что понадобится в плане инструментов?
2) Что такое Selenium &&

Selenium Webdriver?
2) Типы данных в Python
3) Легкое погружение в ООП
4) Что такое DOM-дерево?
5) Типы локаторов
6) Паттерн (шаблон) Page Object
Слайд 3

Инструменты для скачивания 1) https://www.jetbrains.com/ru-ru/pycharm/download– среда разработки 2) https://www.python.org/downloads/ - python

Инструменты для скачивания

1) https://www.jetbrains.com/ru-ru/pycharm/download– среда разработки
2) https://www.python.org/downloads/ - python
3) https://chromedriver.chromium.org/downloads -

перед скачиванием смотрите какая у вас версия google
4) https://www.java.com/download/ie_manual.jsp - java
5) https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/ - allure
6) https://pypi.org/project/selenium/- Selenium WebDriver — это инструмент для автоматизации действий веб-браузера.
Можно идти по началу этого видео: https://www.youtube.com/watch?v=aGx1M-kcQp4
Слайд 4

Что такое Selenium && Selenium WebDriver? Selenium – это проект, в

Что такое Selenium && Selenium WebDriver?

Selenium – это проект, в рамках

которого разрабатывается серия программных продуктов с открытым исходным кодом (open source):
Selenium WebDriver,
Selenium RC,
Selenium Server,
Selenium Grid,
Selenium IDE.
Selenium WebDriver – это программная библиотека для управления браузерами. Часто употребляется также более короткое название WebDriver.
Слайд 5

Selenium WebDriver, или просто WebDriver – это драйвер браузера, то есть

Selenium WebDriver, или просто WebDriver – это драйвер браузера, то есть

не имеющая пользовательского интерфейса программная библиотека, которая позволяет различным другим программам взаимодействовать с браузером, управлять его поведением, получать от браузера какие-то данные и заставлять браузер выполнять какие-то команды.
Слайд 6

Наверняка каждый, кто сталкивался с компьютерами, даже не айтишник, знает слово

Наверняка каждый, кто сталкивался с компьютерами, даже не айтишник, знает слово

«драйвер». Это такая маленькая программа, точнее программная библиотека, которая позволяет другим программам взаимодействовать с некоторым устройством. Драйвер принтера позволяет печатать что-нибудь на принтере. Драйвер диска позволяет читать и писать данные. Драйвер сетевой карты позволяет обмениваться данными с другими компьютерами по сети.
Слайд 7

Типы данных в Python

Типы данных в Python

Слайд 8

Легкое погружение в ООП 1) Инкапсуляция 2) Наследование 3) Полиморфизм

Легкое погружение в ООП

1) Инкапсуляция
2) Наследование
3) Полиморфизм

Слайд 9

Инкапсуляция Инкапсуляция — свойство программирования, позволяющее пользователю не задумываться о сложности

Инкапсуляция

Инкапсуляция — свойство программирования, позволяющее пользователю не задумываться о сложности реализации используемого

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

Наследование Наследование — один из четырёх важнейших механизмов объектно-ориентированного программирования (наряду

Наследование

Наследование — один из четырёх важнейших механизмов объектно-ориентированного программирования (наряду с

инкапсуляцией, полиморфизмом и абстракцией), позволяющий описать новый класс на основе уже существующего (родительского), при этом свойства и функциональность родительского класса заимствуются новым классом.
Слайд 11

Полиморфизм Полиморфи́зм — возможность объектов с одинаковой спецификацией иметь различную реализацию.

Полиморфизм

Полиморфи́зм — возможность объектов с одинаковой спецификацией иметь различную реализацию.

Слайд 12

Что такое DOM-дерево? Браузер, когда запрашивает страницу и получает в ответе

Что такое DOM-дерево?

Браузер, когда запрашивает страницу и получает в ответе от

сервера её исходный HTML-код, должен сначала его разобрать. В процессе анализа и разбора HTML-кода браузер строит на основе него DOM-дерево.
DOM – это объектная модель документа, которую браузер создаёт в памяти компьютера на основании HTML-кода, полученного им от сервера.
Слайд 13

Слайд 14

Типы локаторов Локатор веб-элемента – это специальный объект, способный обнаруживать элементы

Типы локаторов

Локатор веб-элемента – это специальный объект, способный обнаруживать элементы по определенному

запросу. Другими словами, с помощью локаторов можно найти любой интересующий веб-элемент.
By - класс, содержащий статические методы для идентификации элементов:
class By(object):
ID = "id"
XPATH = "xpath"
LINK_TEXT = "link text"
PARTIAL_LINK_TEXT = "partial link text"
NAME = "name"
TAG_NAME = "tag name"
CLASS_NAME = "class name"
CSS_SELECTOR = "css selector"
Слайд 15

Паттерн(шаблон) Page Object Это популярный паттерн, который является де-факто стандартом в

Паттерн(шаблон) Page Object

Это популярный паттерн, который является де-факто стандартом в автоматизации

тестирования веб-продуктов. Основная идея состоит в том, чтобы разделить логику тестов от реализации.
Каждую веб-страницу проекта можно описать в виде объекта класса. Взаимодействие пользователя описываются в методах класса, а в тестах остается только бизнес-логика. Данный подход помогает избежать проблем с тестами при изменении верстки веб-приложения. Вам необходимо поправить только класс, описывающий страницу.
Page Object определяет в себе части:
Base Page \ Base Class — Реализует в себе необходимые методы для работы с webdriver.
Page Object \ Page Class — Реализует методы для работы с элементами на веб-страницах.
Tests — Реализует тесты, описанные бизнес-логикой тест-кейса.