Учебники

50) Использование Selenium с Python

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

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

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

В этом уроке вы узнаете

Что такое Python?

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

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

Ключевое слово Смысл Применение
Элиф Иначе если Иначе если
еще еще если: X; элиф: Y; еще: J
Кроме сделайте это, если произойдет исключение, кроме ValueError, а: распечатать
Exec Запустите строку как Python exec ‘print «Привет, мир!»

Что такое селен?

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

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

Почему стоит выбрать Python вместо Java в Selenium?

Несколько моментов, которые предпочитают Python, а не Java, использовать с Selenium,

  1. Java-программы, как правило, работают медленнее, чем Python-программы.
  2. Java использует традиционные скобки для начала и окончания блоков, в то время как Python использует отступы.
  3. Java использует статическую типизацию, а Python — динамическую типизацию.
  4. Python проще и компактнее по сравнению с Java.

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

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

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

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

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

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

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

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

Перейдите в «Окно»> «Установки»> «PyDev»> «Интерпретатор»> «Интерпретатор Python».

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

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

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

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

  1. Щелкните правой кнопкой мыши PyDev Package Explorer> Создать.
  2. Выберите опцию другие.

  1. Выберите «PyDev> PyDev Project».
  2. Нажмите кнопку «Далее».

  1. Назовите свой проект
  2. Нажмите «Готово».

Вы можете видеть, что новый проект Python (PyDev) создан.

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

После создания проекта PyDev вы создадите новый пакет Python.

  1. Щелкните правой кнопкой мыши Project> New> PyDev Package.
  2. Назовите свой пакет и нажмите «Готово».

Шаг 8) Если вы видите на скриншоте ниже, новый пакет создан.

После создания нового пакета следующим шагом является создание модуля PyDev. Модуль содержит некоторые файлы Python для инициализации. Эти файлы или функции из модуля могут быть импортированы в другой модуль. Таким образом, не нужно будет переписывать программу снова.

Шаг 9) Создайте новый модуль PyDev. Щелкните правой кнопкой мыши по пакету> Создать> Модуль PyDev.

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

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

Шаг 10) Напишите свой код Python.

Как создавать тестовые сценарии в Selenium с Python

В этом примере мы сделали автоматизацию для «страницы входа в Facebook» с помощью драйвера Firefox.

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

ВЫВОД

Введены значения имени пользователя «guru99» и пароля.

Страница Facebook будет входить с электронной почтой и паролем. Страница открыта (см. Изображение ниже)

ПРИМЕР 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»

Резюме :

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