Рубрики
Без рубрики

Учебник Selenium Python: Начало работы с Pтойцами

Согласно опросу Developer 2019 by Stackoverflow, Python считается самым быстрым … Теги с Python, Selenium, учебником, рамками.

Согласно Опрос разработчика 2019 от Stackoverflow Python считается самым быстрорастущим языком программирования. Хотя Pyunit (или Unittest) – это по умолчанию Тестовая автоматизация селена Рамки в Python, многие разработчики и тестеры предпочитают Pтойскую структуру.

В этой вводной статье серии SELENIUM PYTHON TURIAL SERITOR, я дам вам краткий взгляд на основы Pтойской структуры. Ниже приведен суть темы, которые я покрою в этом уроке Selenium Python.

Введение в Pтойские рамки

Pytest – популярный Python Testing Framework, в основном используется для тестирования подразделения. Это открытый источник, и проект проводится на Github. Pytest Framework может использоваться для записи простых модульных тестов, а также сложных функциональных испытаний.

Это облегчает разработку масштабируемых испытаний написания в Python. В отличие от Pyunit (или Untestest) Framework, тесты, написанные с помощью Pтойных, являются выразительными, компактными и читаемыми, так как не требуется код котла.

Тестирование Selenium с Python & Pteest осуществляется для записи масштабируемых тестов для тестирования базы данных, тестирование по перекрестному браузеру, тестирование API и многое другое. Легко начать с Pтойцами, поскольку процесс установки очень прост.

Pytest Framework совместима с Python 3.5+ и Pypy 3. Последняя версия Pтойца составляет 5.4.1.

Чтобы узнать больше о Pтойте, вы можете посетить Сайт Pteest и Pytest Github Repository Отказ

Ниже приведены некоторые из интересных фактов о Pтойте, полученные из репозитория GitHub проекта:

Преимущества Pтойной рамки

Вот некоторые из основных преимуществ тестирования селена с Python & Pteest:

  • Он может быть использован для простых, а также сложных функциональных тестовых случаев для приложений и библиотек.
  • Существующий код Python, который использует другие структуры тестирования Python, можно легко перенести на Pтой.
  • Framework Test Automation Test Automation может использоваться для проектов, которые практикуют TDD (разработка для тестирования), а также проекты с открытым исходным кодом.
  • Переход на Pытостную структуру легко, так как она совместима с другими системами тестирования Python, такими как Pyunit (или Unittest) и нос2.
  • Параметризация поддерживается в Pтойте, что помогает в выполнении одного и того же теста с различными конфигурациями с использованием простого маркера.
  • Доступность светильников позволяет доступно простым тестовым объектам в течение всего модуля/класса/сеанса/функции.

Начало работы с тестированием Selenium с Python & Pteest

Поскольку Pytest не является частью стандартной библиотеки Python, она должна быть установлена отдельно. Чтобы установить Pteest, вы должны выполнить следующую команду на терминале (или командной строке), которая использует менеджер пакета Python (PIP):

pip install –U pytest

Следующая команда должна быть выполнена для проверки состояния установки

pytest --version

Вот выход, когда установка выполняется на машине Windows 10:

Pycharm – самый популярный IDE для разработки, используя язык Python. В зависимости от требования вы можете выбрать версию сообщества или профессиональную версию. Сообщественная версия Pycharm является бесплатным и открытым источником; То же самое можно скачать из Pycharm Официальный Скачать ссылку Отказ

Как только установка Pycharm завершена, необходимо установить тестовый бегун по умолчанию как Pteest. Перейдите к настройкам file🡪 🡪tools 🡪 🡪 Python Integrated Tools и выберите PteSt, чтобы сделать его тестовым бегуном по умолчанию.

Как Pтойт будет использоваться для Автоматическое тестирование браузера Нам также необходимо установить пакет Selenium для Python. Selenium for Python может быть установлен путем выполнения следующей команды в клемме Windows (или подсказка) или на клемме Pycharm.

pip install -U selenium

При этом установка среды для тестирования Selenium с Python & Pytest (включая автоматическое тестирование браузера) завершено.

Предпосылки для тестирования селена с Python & Pteest

Для использования Pytest Framework, Python необходимо установить на машине. Python для Windows можно скачать из здесь Отказ Наряду с Python 3.5+ Pytest также совместим с Pypy3. Предварительное знание Python будет полезно при работе с Тестирование автоматизации селена с Pteest Отказ

Поскольку Pteest будет использоваться для автоматического тестирования браузера, Webdriver Selenium для теста на тесте браузера необходимо установить. Ссылки для скачивания для Webdriver Selenium для популярных браузеров ниже:

Операhttps://github.com/Operasoftware/operachromiumdriver/relestes

Firefoxhttps://github.com/mozilla/geckodriver/relestes.

Хромhttp://chromedriver.chromium.org/downloads

Internet Explorerhttps://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver

Microsoft Edgehttps://blogs.windows.com/msedgedev/2015/07/23/bringing-automated-testing-to-microsoft-hibrough-webdriver/

Всегда очень хорошая практика для установки Webdriver для соответствующего веб-браузера в месте, где присутствует исполняемый файл браузера (.exe). Делая это, вам не нужно указывать путь WebDriver при создании браузера.

Насколько Pytest идентифицирует тестовые файлы и методы испытаний

Выполнение команды Pytest (без упоминания файла файла) на терминале запустится все файлы Python, имеющие имена файлов, начиная с test_ * или заканчивая * _test Отказ Эти файлы автоматически идентифицируются как тестовые файлы с помощью Pтойской структуры.

Рамки также мамантируют, что методы испытаний должны начинаться с «теста», а метод не будет рассмотрен для выполнения. Ниже приведены два обязательных требования для тестового кода для тестирования селена с Python & Pteest.

File naming nomenclature - File name should be test_*.py or *_test.py
Test Method nomenclature - Test method should be of the format test*

Это обязательные требования, поскольку Pytest имеет функции встроенные в рамках, поддерживающие автоматическое открытие тестовых модулей и методов испытаний (или функций).

Запуск вашего первого скрипта автоматизации испытаний Selenium с Python & Pteest

Чтобы продемонстрировать тестирование селена с Python & Pteest, я проверю сценарий приложения Lambdatest ToDo для этого учебника Selenium Python:

  1. Перейдите к URL https://lambdatest.github.io/sample-todo-app/
  2. Выберите первые два флажка
  3. Отправить «счастливое тестирование на лямбдатест» на текстовое поле с
  4. Нажмите кнопку «Добавить» и убедитесь, был ли текст был добавлен или нет

Файл реализации (TPY.PY) может быть расположен в любом каталоге, поскольку вызов будет выполнен с использованием имени файла.

Реализация

#Implementation of Selenium test automation for this Selenium Python Tutorial
import pytest
from selenium import webdriver
import sys
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
from time import sleep

def test_lambdatest_todo_app():
    chrome_driver = webdriver.Chrome()

    chrome_driver.get('https://lambdatest.github.io/sample-todo-app/')
    chrome_driver.maximize_window()

    chrome_driver.find_element_by_name("li1").click()
    chrome_driver.find_element_by_name("li2").click()

    title = "Sample page - lambdatest.com"
    assert title == chrome_driver.title

    sample_text = "Happy Testing at LambdaTest"
    email_text_field = chrome_driver.find_element_by_id("sampletodotext")
    email_text_field.send_keys(sample_text)
    sleep(5)

    chrome_driver.find_element_by_id("addbutton").click()
    sleep(5)

    output_str = chrome_driver.find_element_by_name("li6").text
    sys.stderr.write(output_str)

    sleep(2)
    chrome_driver.close()

Кода проход

Шаг 1 – Необходимые модули импортируются, а именно PteSt, Sys, Selenium, время и т. Д.

#importing necessary module for Selenium Python tutorial
import pytest
from selenium import webdriver
import sys

Шаг 2 – Имя теста начинается с test_ (то есть test_lambdatest_todo_app ) Так что Pтойцы способны определить тест. Используя команду Webdriver WebDriver, Webdriver Chrome создается. URL пропускается с использованием метода .get в Selenium.

#Initiating ChromeDriver for this Selenium Python Tutorial
def test_lambdatest_todo_app():
chrome_driver = webdriver.Chrome()

chrome_driver.get('https://lambdatest.github.io/sample-todo-app/')
chrome_driver.maximize_window()

Шаг 3 – Особенность инструмента «Инвертирование» браузера Chrome используется для получения подробной информации о необходимых веб-элементах I.E. флажки с именем Li1 & Li2 и элемента кнопки с.

После того, как веб-элементы расположены с использованием соответствующих методов селена [I.E. find_element_by_name (), find_element_by_id ()], необходимые операции [I.E. Нажмите () и т. Д.] Проводятся на этих элементах.

#Identifying Required Elements and performing necessary operation on them for Selenium Python tutorial
chrome_driver.find_element_by_name("li1").click()
chrome_driver.find_element_by_name("li2").click()
.........................
.........................
chrome_driver.find_element_by_id("addbutton").click()
sleep(5)

output_str = chrome_driver.find_element_by_name("li6").text
.........................

Шаг 4 – Способ CLACE () SELENIUIUM используется для освобождения ресурсов, удерживаемых экземпляром WebDriver.

chrome_driver.close()

Исполнение

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

pytest SampleTest.py --verbose --capture=no

Использование -ВЕРОДОВОГО УРОВЕННОГО УРОВЕННОСТИ УСТАНОВКА УСТАНОВКА. Используется для захвата только STDERR и не STDOUT.

Для добавления дополнительных параметров в команду Pytest вы можете выполнить опцию -help с помощью Pтойца.

pytest --help

Вот снимка с выполнением тестирования в процессе:

Упаковывать его вверх

В этой вводной статье текущих сериалов Selenium Python я дал вам краткий взгляд на тестирование Selenium с Python & Pteest. Pytest является одним из самых популярных систем автоматизации тестирования Selenium в Python.

Мы также продемонстрировали использование Pтойных рамок с Selenium, где в тесте URL-адреса была приложение Lambdatest Todo. Pytest Framework Mandites Осознание номенклатуры именования для методов тестирования и тестовых файлов, поскольку он имеет автоматическое открытие тестовых модулей и методов испытаний.

Наличие светильников и классов делает его идеальным основанием для тестирования автоматизации, включая тестирование по перекрестному браузеру.

Теперь вы должны быть в состоянии сделать тестирование Selenium Python с Pтойцами. В случае каких-либо сомнений добраться до нас. Не стесняйтесь делиться этой статьей со своими сверстниками и помочь нам дойти до них. Это все сейчас. Счастливое тестирование !!! 😀

Оригинал: “https://dev.to/himanshusheth004/selenium-python-tutorial-getting-started-with-pytest-k4f”