Selenium Python Учебное пособие с примером WebDriver

Selenium с Python

Selenium поддерживает Python и, таким образом, может быть использован как Selenium Вебдрайвер с Python для тестирования.

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

Вы можете запустить Selenium с Python сценарии для Firefox, Chrome, IE и т. д. на разных Operaтинговые системы.

Что такое Python?

Python — это объектно-ориентированный скриптовый язык высокого уровня. Он разработан в удобной для пользователя форме. Python использует простые английские ключевые слова, которые легко интерпретировать. Он имеет меньше синтаксических сложностей, чем любой другой языки программирования.

См. некоторые примеры в таблице ниже.

Ключевое слово Смысл Применение
Элиф Иначе если Иначе если
еще Еще если: Х; Элиф: Й; еще: Дж
кроме сделайте это. Если произойдет исключение, кроме ValueError, a: напечатайте
Exec Запустить строку как Python exec 'напечатать «привет, мир!»'

Что такое Selenium?

Selenium это инструмент для тестирования вашего веб-приложения. Это можно сделать разными способами, например

  • Разрешите ему нажимать на кнопки
  • Вносите контент в структуры
  • Просмотрите свой сайт, чтобы проверить, все ли в порядке и так далее.

Как установить и настроить PyDev in Eclipse

PyDev is Python среда разработки для Eclipse.

Шаг 1) Перейдите в Eclipse Рынок. Справка > Установка нового программного обеспечения

Установить и настроить PyDev in Eclipse

Следующим шагом будет установка «pydev IDE» для Eclipse.

Шаг 2) На этом этапе

  1. Найдите «http://pydev.org/updates» в разделе «Работа с», а затем
  2. Выберите все перечисленные элементы и дважды нажмите «Далее».
  3. Примите лицензионное соглашение и нажмите «Готово».

Установить и настроить PyDev in Eclipse

Шаг 3) Вы можете увидеть предупреждение системы безопасности. Нажмите «Все равно установить».

Установить и настроить PyDev in Eclipse

Шаг 4) Теперь, на этом этапе вы установите предпочтения. С помощью опции предпочтений вы можете использовать Python согласно потребности проекта.

Перейдите в Window> Preferences> PyDev > Переводчик > Python Устный переводчик.

Установить и настроить PyDev in Eclipse

Давайте установим значение по умолчанию Python Интерпретатор. Это то же самое, что вам нужно настроить компилятор Java для запуска Java code. Чтобы изменить имя интерпретатора, нажмите кнопку Browse for python/pypy exe.

Установить и настроить PyDev in Eclipse

Шаг 5) На этом этапе укажите «имя интерпретатора» и путь к файлу «exe». Python.

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

Установить и настроить PyDev in Eclipse

Шаг 6) Создать новый проект в Python. На этом этапе

  1. Щелкните правой кнопкой мыши PyDev Обозреватель пакетов > Создать.
  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

Выберите «Пустой шаблон» и нажмите «ОК».

Установить и настроить 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: переменная «пароль» будет использоваться для хранения значений пароля.
  • Строка кода 5: В этой строке мы инициализируем «FireFox», сделав из этого объект.
  • Строка кода 6: «Метод driver.get» перейдет на страницу, заданную URL-адресом. WebDriver будет ждать, пока страница не будет полностью загружена (то есть событие «onload» не исчезнет), прежде чем вернуть управление вашему тесту или скрипту.
  • Строка кода 7: В этой строке мы находим элемент текстового поля, в котором должно быть написано «электронное письмо».
  • Строка кода 8: Теперь мы отправляем значения в раздел электронной почты.
  • Строка кода 9: то же самое для пароля
  • Строка кода 10: Отправка значений в раздел пароля.
  • Строка кода 11: element.send_keys(Keys.RETURN) используется для нажатия клавиши ввода после вставки значений.
  • Строка кода 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 команды в разные браузеры, несмотря на различия в дизайне их браузеров.

Подведем итог этой публикации следующим образом: