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 in Eclipse

Наступним кроком є ​​встановлення “pydev IDE” для eclipse.

Крок 2) На цьому етапі

  1. Знайдіть «http://pydev.org/updates» у Work with, а потім
  2. Виберіть усі перелічені елементи та двічі натисніть «Далі».
  3. Прийміть Ліцензійну угоду та натисніть Готово.

Встановити та налаштувати PyDev in Eclipse

Крок 3) Ви можете зіткнутися з попередженням безпеки, натисніть «Все одно встановити».

Встановити та налаштувати PyDev in Eclipse

Крок 4) зараз, на цьому кроці ви встановите параметри. За допомогою параметра переваги ви можете використовувати Python відповідно до потреб проекту.

Перейдіть до Вікно > Налаштування > PyDev > Перекладач > Python Перекладач.

Встановити та налаштувати PyDev in Eclipse

Давайте встановимо значення за замовчуванням Python Перекладач. Це так само, як вам потрібно встановити компілятор java для запуску a Java код. Щоб змінити ім’я інтерпретатора, натисніть кнопку Огляд python/pypy exe.

Встановити та налаштувати PyDev in Eclipse

Крок 5) На цьому кроці вкажіть «ім’я інтерпретатора» та шлях до файлу «exe». Python.

  1. Натисніть «Огляд» і знайдіть python.exe там, де ви встановили Python.
  2. Натисніть кнопку «ОК».
  3. Виберіть всю папку та натисніть OK
  4. Натисніть «Застосувати та закрити».

Встановити та налаштувати PyDev in Eclipse

Крок 6) Створіть новий проект у Python. На цьому етапі

  1. Клацніть правою кнопкою миші PyDev Package Explorer > New.
  2. Виберіть варіант інші.

Встановити та налаштувати PyDev in Eclipse

  1. Виберіть "PyDev > PyDev Демонструвати".
  2. Натисніть кнопку «Далі».

Встановити та налаштувати PyDev in Eclipse

  1. Назвіть свій проект
  2. Натисніть "Готово".

Встановити та налаштувати PyDev in Eclipse

Ви можете побачити нове Python (PyDev) створено проект.

Крок 7) На цьому етапі

Після створення "PyDev Project', ви створите новий Python пакет.

  1. Клацніть правою кнопкою миші Проект > Створити > PyDev Пакет.
  2. Назвіть свій пакет і натисніть «Готово».

Встановити та налаштувати PyDev in Eclipse

Встановити та налаштувати PyDev in Eclipse

Крок 8) Якщо ви бачите на знімку екрана нижче, створено новий пакет.

Встановити та налаштувати PyDev in Eclipse

Після створення нового пакета наступним кроком є ​​створенняPyDev Модуль. Модуль містить деякі Python файли для ініціалізації. Ці файли або функції з модуля можна імпортувати в інший модуль. Отже, не потрібно буде переписувати програму заново.

Крок 9) Створіть новий PyDev модуль. Клацніть правою кнопкою миші на пакеті > Новий > PyDev модуль

Встановити та налаштувати PyDev in Eclipse

Назвіть свій модуль і натисніть «Готово».

Встановити та налаштувати PyDev in Eclipse

Виберіть «Порожній шаблон» і натисніть «OK».

Встановити та налаштувати PyDev in Eclipse

Крок 10) Напишіть свій код для Selenium з Python як показано нижче

Встановити та налаштувати PyDev in Eclipse

Як створити тестові сценарії в 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()

Знімок коду

Створення тестових сценаріїв у Selenium з Python

Пояснення коду

  • Рядок коду 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» і пароля.

Створення тестових сценаріїв у Selenium з Python

Сторінка Facebook буде входити за допомогою електронної пошти та пароля. Сторінку відкрито (див. зображення нижче)

Створення тестових сценаріїв у Selenium з Python

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"

Знімок коду

Створення тестових сценаріїв у Selenium з Python

Пояснення коду:

  • Рядок коду 1-2: Імпорт пакетів селену
  • Рядок коду 4: форматувати Firefox шляхом створення об’єкта
  • Рядок коду 6: Отримати сторінку входу (Facebook)
  • Рядок коду 8-10: Отримайте ім’я користувача, поля для введення пароля та кнопку «Надіслати».
  • Рядок коду 11-12: Введіть дані в поля для введення імені користувача та пароля
  • Рядок коду 14: Натисніть на кнопку «Надіслати».
  • Рядок коду 15: Створіть об'єкт очікування з тайм-аутом 5 секунд.
  • Рядок коду 16: Захоплення заголовка з об’єкта «браузер».
  • Рядок коду 17: Тестування захопленого рядка заголовка за допомогою «Facebook»

Чому вибрати Python над Java in Selenium

Кілька пунктів на користь Python над Java використовувати з Selenium є

  1. Java програми, як правило, працюють повільніше порівняно з Python програм.
  2. Java використовує традиційні дужки для початку та кінця блоків, а Python використовує відступ.
  3. Java використовує статичну типізацію, а Python динамічно типізується.
  4. Python простіше і компактніше в порівнянні з Java.

Підсумки

  • Selenium є веб-версією з відкритим кодом інструмент автоматизації.
  • Python мова вживається с Selenium для тестування. Вона набагато менш багатослівна та проста у використанні, ніж будь-яка інша мова програмування
  • Команда Python API дають змогу підключатися до браузера через Selenium
  • Selenium може надіслати стандарт Python команд для різних браузерів, незважаючи на відмінності в дизайні їхніх браузерів.