Selenium Python Підручник із прикладом WebDriver
Selenium з Python
Selenium опори Python і тому може бути використаний як Selenium Веб-драйвер з Python для тестування.
- Python простий порівняно з іншими мовами програмування, оскільки має набагато меншу кількість слів.
- Команда Python API дають змогу підключатися до браузера через Selenium.
- Selenium надсилає стандарт Python команд для різних браузерів, незважаючи на відмінності в дизайні їхніх браузерів.
Можна бігати Selenium з Python сценарії для Firefox, Chrome, IE тощо на різних Operating Systems.
Що таке Python?
Python це об'єктно-орієнтована сценарна мова високого рівня. Він розроблений у зручній для користувача формі. Python використовує прості англійські ключові слова, які легко інтерпретувати. Він має менше синтаксичних ускладнень, ніж будь-який інший мови програмування.
Перегляньте деякі приклади в таблиці нижче.
ключове слово | Сенс | Використання |
---|---|---|
Еліф | Інакше якщо | Інакше якщо |
ще | Ще | якщо: X; elif: Y; інше: Дж |
крім | зробіть це, якщо станеться виняток, | крім ValueError, a: надрукувати a |
Exec | Запустити рядок як Python | exec 'print “hello world!”' |
Що таке Selenium?
Selenium це інструмент для тестування вашої веб-програми. Ви можете зробити це різними способами, наприклад
- Дозвольте йому натискати на кнопки
- Введіть вміст у структури
- Перегляньте свій сайт, щоб перевірити, чи все «ОК» і так далі.
Як встановити та налаштувати PyDev in Eclipse
PyDev is Python середовище розробки для Eclipse.
Крок 1) Треба Eclipse Ринок. Довідка > Встановити нове програмне забезпечення
Наступним кроком є встановлення “pydev IDE” для eclipse.
Крок 2) На цьому етапі
- Знайдіть «http://pydev.org/updates» у Work with, а потім
- Виберіть усі перелічені елементи та двічі натисніть «Далі».
- Прийміть Ліцензійну угоду та натисніть Готово.
Крок 3) Ви можете зіткнутися з попередженням безпеки, натисніть «Все одно встановити».
Крок 4) зараз, на цьому кроці ви встановите параметри. За допомогою параметра переваги ви можете використовувати Python відповідно до потреб проекту.
Перейдіть до Вікно > Налаштування > PyDev > Перекладач > Python Перекладач.
Давайте встановимо значення за замовчуванням Python Перекладач. Це так само, як вам потрібно встановити компілятор java для запуску a Java код. Щоб змінити ім’я інтерпретатора, натисніть кнопку Огляд python/pypy exe.
Крок 5) На цьому кроці вкажіть «ім’я інтерпретатора» та шлях до файлу «exe». Python.
- Натисніть «Огляд» і знайдіть python.exe там, де ви встановили Python.
- Натисніть кнопку «ОК».
- Виберіть всю папку та натисніть OK
- Натисніть «Застосувати та закрити».
Крок 6) Створіть новий проект у Python. На цьому етапі
- Клацніть правою кнопкою миші PyDev Package Explorer > New.
- Виберіть варіант інші.
- Виберіть "PyDev > PyDev Демонструвати".
- Натисніть кнопку «Далі».
- Назвіть свій проект
- Натисніть "Готово".
Ви можете побачити нове Python (PyDev) створено проект.
Крок 7) На цьому етапі
Після створення "PyDev Project', ви створите новий Python пакет.
- Клацніть правою кнопкою миші Проект > Створити > PyDev Пакет.
- Назвіть свій пакет і натисніть «Готово».
Крок 8) Якщо ви бачите на знімку екрана нижче, створено новий пакет.
Після створення нового пакета наступним кроком є створенняPyDev Модуль. Модуль містить деякі Python файли для ініціалізації. Ці файли або функції з модуля можна імпортувати в інший модуль. Отже, не потрібно буде переписувати програму заново.
Крок 9) Створіть новий PyDev модуль. Клацніть правою кнопкою миші на пакеті > Новий > PyDev модуль
Назвіть свій модуль і натисніть «Готово».
Виберіть «Порожній шаблон» і натисніть «OK».
Крок 10) Напишіть свій код для Selenium з Python як показано нижче
Як створити тестові сценарії в Selenium з Python
В цьому Selenium Веб-драйвер з Python наприклад, ми зробили автоматизацію для «сторінки входу у Facebook» за допомогою Firefox водій.
Selenium з Python Приклад 1: увійдіть у Facebook
from selenium import webdriver from selenium.webdriver.common.keys import Keys user_name = "YOUR EMAILID" password = "YOUR PASSWORD" driver = webdriver.Firefox() driver.get("https://www.facebook.com") element = driver.find_element_by_id("email") element.send_keys(user_name) element = driver.find_element_by_id("pass") element.send_keys(password) element.send_keys(Keys.RETURN) element.close()
Знімок коду
Пояснення коду
- Рядок коду 1: імпорт веб-драйвера з модуля selenium
- Рядок коду 2: Ключі імпорту з модуля selenium
- Рядок коду 3: Користувач — це змінна, яка буде використовуватися для зберігання значень імені користувача.
- Рядок коду 4: Змінна “password” використовуватиметься для зберігання значень пароля.
- Рядок коду 5: У цьому рядку ми ініціалізуємо «FireFox”, зробивши з нього об’єкт.
- Рядок коду 6: метод «driver.get» переведе на сторінку, задану URL-адресою. WebDriver чекатиме, доки сторінка повністю завантажиться (тобто не буде завершено «onload»), перш ніж повернути керування вашому тесту або сценарію.
- Рядок коду 7: у цьому рядку ми знаходимо елемент текстового поля, де потрібно написати «електронну пошту».
- Рядок коду 8: Зараз ми надсилаємо значення в розділ електронної пошти
- Рядок коду 9: Те саме для пароля
- Рядок коду 10: Надсилання значень до розділу пароля
- Рядок коду 11: element.send_keys(Keys.RETURN) використовується для натискання enter після вставлення значень
- Рядок коду 12: Закрити
ВИХІД
Введені значення імені користувача «guru99» і пароля.
Сторінка Facebook буде входити за допомогою електронної пошти та пароля. Сторінку відкрито (див. зображення нижче)
Selenium з Python ПРИКЛАД 2: Увійдіть у Facebook і перевірте назву
У цьому прикладі
- Ми відкриємо сторінку входу.
- Заповніть необхідні поля «ім'я користувача» і «пароль».
- Перевірте назву сторінки
from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait # Step 1) Open Firefox browser = webdriver.Firefox() # Step 2) Navigate to Facebook browser.get("http://www.facebook.com") # Step 3) Search & Enter the Email or Phone field & Enter Password username = browser.find_element_by_id("email") password = browser.find_element_by_id("pass") submit = browser.find_element_by_id("loginbutton") username.send_keys("YOUR EMAILID") password.send_keys("YOUR PASSWORD") # Step 4) Click Login submit.click() wait = WebDriverWait( browser, 5 ) page_title = browser.title assert page_title == "Facebook"
Знімок коду
Пояснення коду:
- Рядок коду 1-2: Імпорт пакетів селену
- Рядок коду 4: форматувати Firefox шляхом створення об’єкта
- Рядок коду 6: Отримати сторінку входу (Facebook)
- Рядок коду 8-10: Отримайте ім’я користувача, поля для введення пароля та кнопку «Надіслати».
- Рядок коду 11-12: Введіть дані в поля для введення імені користувача та пароля
- Рядок коду 14: Натисніть на кнопку «Надіслати».
- Рядок коду 15: Створіть об'єкт очікування з тайм-аутом 5 секунд.
- Рядок коду 16: Захоплення заголовка з об’єкта «браузер».
- Рядок коду 17: Тестування захопленого рядка заголовка за допомогою «Facebook»
Чому вибрати Python над Java in Selenium
Кілька пунктів на користь Python над Java використовувати з Selenium є
- Java програми, як правило, працюють повільніше порівняно з Python програм.
- Java використовує традиційні дужки для початку та кінця блоків, а Python використовує відступ.
- Java використовує статичну типізацію, а Python динамічно типізується.
- Python простіше і компактніше в порівнянні з Java.
Підсумки
- Selenium є веб-версією з відкритим кодом інструмент автоматизації.
- Python мова вживається с Selenium для тестування. Вона набагато менш багатослівна та проста у використанні, ніж будь-яка інша мова програмування
- Команда Python API дають змогу підключатися до браузера через Selenium
- Selenium може надіслати стандарт Python команд для різних браузерів, незважаючи на відмінності в дизайні їхніх браузерів.