RFBrowser в Robot Framework
Введение | |
Установка | |
Запустить браузер в видимом режиме | |
xpath | |
Пример: Верифицировать заголовок страницы | |
ElementState: все возможные состояния элемента | |
Get Element States | |
Похожие статьи |
Введение
RFBrowser - это новый встроенный в RobotFramework драйвер для браузеров на основе Playwright
Установка
Команда для установки с помощью pip
python -m pip install robotframework-browser
Пример установки с нуля
python -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip
python -m pip install robotframework
python -m pip install robotframework-browser
rfbrowser init
Затем нужно установить nodejs минимум 12-й версии. О том как это сделать в Linux читайте в статье «Установить последнюю версию nodejs»
Запустить браузер в видимом режиме
Чтобы запустить RFBrowser в видимом режиме нужно установить опцию headless=False
New Browser browser=chromium headless=False
xpath
# По именам классов Click xpath=//span[@class="name1 name2 name3"] # По url Wait For Elements State xpath=//a[@href="${your_url}"] visible
Пример: Верифицировать заголовок страницы
*** Settings *** Documentation Example that opens single page Library Browser ... enable_playwright_debug=${True} ... auto_closing_level=TEST ... retry_assertions_for=0:00:03 *** Variables *** ${url} https://eth1.ru *** Keywords *** Start Chromium Browser New Browser browser=chromium headless=False New Context viewport={'width': 1920, 'height': 1080} ignoreHTTPSErrors=True *** Test Cases *** Starting a browser with a page Start Chromium Browser New Page https://eth1.ru Get Title == eth1.ru Close Browser
ElementState
Все возможные состояния, которые может иметь элемент.
Докуметация
Allowed Values attached detached visible hidden enabled disabled editable readonly selected deselected focused defocused checked unchecked stable
Get Element States
Проверять
статус элемента
теперь нужно с помощью ключевого слова Get Element States
Например, если нужно проверить видимость элемента с классом devhops
*** Settings *** Documentation Example that opens single page Library Browser ... enable_playwright_debug=${True} ... auto_closing_level=TEST ... retry_assertions_for=0:00:03 *** Variables *** ${url} https://eth1.ru *** Keywords *** Start Chromium Browser New Browser browser=chromium headless=False New Context viewport={'width': 1920, 'height': 1080} ignoreHTTPSErrors=True Verify Element Visibility [Arguments] ${selector} ${visible} = Get Element States ${selector} then bool(value & visible) Should Be True ${visible} *** Test Cases *** Verify devhops Visibility Start Chromium Browser New Page https://eth1.ru Verify Element Visibility .devhops Close Browser
В этом примере мы передаём аргумент selector в кейворд Verify Element Visibility.
Подробнее про это можно прочитать в статье
«Передача аргументов»
RFBrowser | |
Robot Framework | |
Ошибки RFBrowser | |
Playwright |