Протокол WebDriver
newSession
Команда New Session створює нову сесію WebDriver з кінцевою точкою вузла. Якщо створення не вдалося, повертається помилка про те, що сесія не створена.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.newSession(capabilities)
Параметри
Назва | Тип | Деталі |
---|---|---|
capabilities | object | JSON-об'єкт, набір можливостей, які були об'єднані та співставлені в алгоритмі обробки можливостей |
Повертає
- <Object>
session
: Об'єкт, що містить sessionId та можливості створеної сесії WebDriver.
deleteSession
Команда Delete Session закриває будь-які контексти верхнього рівня, пов'язані з поточною сесією, завершує з'єднання і, нарешті, закриває поточну сесію.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.deleteSession(deleteSessionOpts)
Параметри
Назва | Тип | Деталі |
---|---|---|
deleteSessionOpts опціонально | object | Об'єкт, що містить параметри для команди deleteSession, наприклад { shutdownDriver: boolean } |
status
Команда Status повертає інформацію про те, чи знаходиться віддалений кінець у стані, в якому він може створювати нові сесії, і додатково може включати довільну метаінформацію, специфічну для реалізації.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.status()
Приклад
loading...
Повертає
- <Object>
status
: Об'єкт, що містить статус драйвера.
getTimeouts
Команда Get Timeouts отримує тривалість таймаутів, пов'язаних з поточною сесією.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.getTimeouts()
Приклад
loading...
Повертає
- <Object>
timeouts
: Об'єкт, що містить тривалість таймаутів дляscript
,pageLoad
таimplicit
.
setTimeouts
Команда Set Timeouts встановлює тривалість таймаутів, пов'язаних з поточною сесією. Таймаути, якими можна керувати, перелічені в таблиці таймаутів сесії нижче.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.setTimeouts(implicit, pageLoad, script)
Параметри
Назва | Тип | Деталі |
---|---|---|
implicit опціонально | number | ціле число в мс для неявного очікування сесії |
pageLoad опціонально | number | ціле число в мс для таймауту завантаження сторінки сесії |
script опціонально | number | ціле число в мс для таймауту скрипта сесії |
Приклад
loading...
getUrl
Команда Get Current URL повертає URL поточного контексту перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.getUrl()
Приклад
loading...
Повертає
- <string>
url
: URL документа активного документа поточного контексту перегляду верхнього рівня
navigateTo
Команда navigateTo (go) використовується для того, щоб примусити агент користувача перейти в поточному контексті перегляду верхнього рівня на нове місце.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: url. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.navigateTo(url)
Параметри
Назва | Тип | Деталі |
---|---|---|
url | string | рядок, що представляє абсолютний URL (починається з http(s)), можливо, включаючи фрагмент (#...), також може бути локальна схема (about: тощо) |
Приклад
loading...
back
Команда Back змушує браузер пройти один крок назад у об'єднаній історії сесії поточного контексту перегляду верхнього рівня. Це еквівалентно натисканню кнопки "назад" в інтерфейсі браузера або виклику window.history.back
.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.back()
Приклад
loading...
forward
Команда Forward змушує браузер пройти один крок вперед у об'єднаній історії сесії поточного контексту перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.forward()
Приклад
loading...
refresh
Команда Refresh змушує браузер перезавантажити сторінку в поточному контексті перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.refresh()
Приклад
loading...
getTitle
Команда Get Title повертає заголовок документа поточного контексту перегляду верхнього рівня, еквівалентно виклику document.title
.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.getTitle()
Приклад
loading...
Повертає
- <string>
title
: Повертає рядок, ідентичнийdocument.title
поточного контексту перегляду верхнього рівня.
getWindowHandle
Команда Get Window Handle повертає ідентифікатор вікна для поточного контексту перегляду верхнього рівня. Його можна використовувати як аргумент для Switch To Window.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.getWindowHandle()
Приклад
loading...
Повертає
- <string>
handle
: Повертає рядок, який є ідентифікатором вікна для поточного контексту перегляду верхнього рівня.
closeWindow
Команда Close Window закриває поточний контекст перегляду верхнього рівня. Після завершення, якщо більше немає відкритих контекстів перегляду верхнього рівня, сама сесія WebDriver закривається.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.closeWindow()
Приклад
loading...
switchToWindow
Команда Switch To Window використовується для вибору поточного контексту перегляду верхнього рівня для поточної сесії, тобто того, який буде використовуватися для обробки команд.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: switchWindow. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.switchToWindow(handle)
Параметри
Назва | Тип | Деталі |
---|---|---|
handle | string | рядок, що представляє ідентифікатор вікна, повинен бути одним із рядків, що були повернуті при виклику getWindowHandles |
Приклад
loading...
createWindow
Створює новий контекст перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.createWindow(type)
Параметри
Назва | Тип | Деталі |
---|---|---|
type | string | Встановіть значення 'tab', якщо новостворене вікно ділить вікно на рівні ОС з поточним контекстом перегляду, або 'window' в іншому випадку. |
Приклад
loading...
Повертає
- <Object>
window
: Об'єкт нового вікна, що містить 'handle' зі значенням ідентифікатора та 'type' зі значенням типу створеного вікна
getWindowHandles
Команда Get Window Handles повертає список ідентифікаторів вікон для кожного відкритого контексту перегляду верхнього рівня. Порядок, в якому повертаються ідентифікатори вікон, є довільним.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.getWindowHandles()
Приклад
loading...
Повертає
- <String[]>
handles
: Масив, який є списком ідентифікаторів вікон.
printPage
Команда Print Page рендерить документ у пагінований PDF-документ. Примітка: Chrome наразі підтримує це лише в режимі headless, див. crbug753118
).
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.printPage(orientation, scale, background, width, height, top, bottom, left, right, shrinkToFit, pageRanges)
Параметри
Назва | Тип | Деталі |
---|---|---|
orientation опціонально | string | орієнтація сторінки. За замовчуванням: portrait |
scale опціонально | number | масштаб сторінки. За замовчуванням: 1 |
background опціонально | boolean | фон сторінки. За замовчуванням: false |
width опціонально | number | ширина сторінки в см. За замовчуванням: 21.59 для сторінки |
height опціонально | number | висота сторінки в см. За замовчуванням: 27.94 для сторінки |
top опціонально | number | поля сторінки в см від верхнього краю. За з амовчуванням: 1 |
bottom опціонально | number | поля сторінки в см від нижнього краю. За замовчуванням: 1 |
left опціонально | number | поля сторінки в см від лівого краю. За замовчуванням: 1 |
right опціонально | number | поля сторінки в см від правого краю. За замовчуванням: 1 |
shrinkToFit опціонально | boolean | зменшення pdf для підгонки до сторінки. За замовчуванням: true |
pageRanges опціонально | object[] | діапазони сторінок. За замовчуванням [] |
Приклад
loading...
Повертає
- <string>
pdf
: PDF-представлення пагінованого документа, закодоване в base64.
switchToFrame
Команда Switch To Frame використовується для вибору поточного контексту перегляду верхнього рівня або дочірнього контексту перегляду поточного контексту як поточного контексту перегляду для наступних команд.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу застаріла
Ця команда застаріла, і ми рекомендуємо усім використовувати switchFrame
для перемикання у фрейми. Дізнайтеся більше про цю команду на https://webdriver.io/docs/api/browser/switchFrame.
Використання
browser.switchToFrame(id)
Параметри
Назва | Тип | Деталі |
---|---|---|
id | number, object, null | один з трьох можливих типів: null: представляє контекст перегляду верхнього рівня (тобто не iframe), число, що представляє індекс об'єкта вікна, відповідного фрейму, об'єкт Element, отриманий за допомогою findElement . |
Приклад
loading...
switchToParentFrame
Команда Switch to Parent Frame встановлює поточний контекст перегляду для майбутніх команд на батьківський контекст поточного контексту перегляду.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.switchToParentFrame()
Приклад
loading...
getWindowRect
Команда Get Window Rect повертає розмір і позицію на екрані вікна операційної системи, що відповідає поточному контексту перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: getWindowSize. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.getWindowRect()
Приклад
loading...
Повертає
- <Object>
windowRect
: JSON-представлення об'єкта "вікно прямокутника". Це має 4 властивості:x
,y
,width
таheight
.
setWindowRect
Команда Set Window Rect змінює розмір та положення вікна операційної системи, що відповідає поточному контекст у перегляду верхнього рівня.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: setWindowSize. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.setWindowRect(x, y, width, height)
Параметри
Назва | Тип | Деталі |
---|---|---|
x | number, null | атрибут screenX об'єкта вікна |
y | number, null | атрибут screenY об'єкта вікна |
width | number, null | ширина зовнішніх розмірів контексту перегляду верхнього рівня, включаючи елементи інтерфейсу браузера тощо... |
height | number, null | висота зовнішніх розмірів контексту перегляду верхнього рівня, включаючи елементи інтерфейсу браузера тощо... |
Приклад
loading...
Повертає
- <Object>
windowRect
: JSON-представлення об'єкта "вікно прямокутника" на основі нового стану вікна.
maximizeWindow
Команда Maximize Window викликає специфічну для віконного менеджера операцію "максимізації", якщо така є, у вікні, що містить поточний контекст перегляду верхнього рівня. Зазвичай це збільшує вікно до максимально доступного розміру без переходу в повноекранний режим.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.maximizeWindow()
Приклад
loading...
Повертає
- <Object>
windowRect
: JSON-представлення об'єкта "вікно прямокутника" на основі нового стану вікна.
minimizeWindow
Команда Minimize Window викликає специфічну для віконного менеджера операцію "мінімізації", якщо така є, у вікні, що містить поточний контекст перегляду верхнього рівня. Зазвичай це приховує вікно в системному треї.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.minimizeWindow()
Повертає
- <Object>
windowRect
: JSON-представлення об'єкта "вікно прямокутника" (нового) поточного контексту перегляду верхнього рівня.
fullscreenWindow
Команда Fullscreen Window викликає специфічну для віконного менеджера операцію "повного екрана", якщо така є, у вікні, що містить поточний контекст перегляду верхнього рівня. Зазвичай це збільшує вікно до розміру фізичного дисплея і може приховувати елементи інтерфейсу браузера, такі як панелі інструментів.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Використання
browser.fullscreenWindow()
Повертає
- <Object>
windowRect
: JSON-представлення об'єкта "вікно прямокутника" (нового) поточного контексту перегляду верхнього рівня.
findElement
Команда Find Element використовується для пошуку елемента в поточному контексті перегляду, який можна використовувати для майбутніх команд. Ця команда повертає JSON-представлення елемента, яке можна передати до команди $ для перетворення посилання на розширений елемент WebdriverIO.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: $. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.findElement(using, value)
Параметри
Назва | Тип | Деталі |
---|---|---|
using | string | дійсна стратегія розташування елемента |
value | string | фактичний селектор, який буде використовуватися для пошуку елемента |
Приклад
loading...
Повертає
- <object>
element
: JSON-представлення об'єкта елемента, наприклад,{ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT_1' }
.
findElementFromShadowRoot
Команда Find Element From Shadow Root використовується для пошуку елемента всередині тіньового кореня елемента, який можна використовувати для майбутніх команд. Ця команда повертає JSON-представлення елемента, яке можна передати до команди $ для перетворення посилання на розширений елемент WebdriverIO.
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: shadow$. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.findElementFromShadowRoot(shadowId, using, value)
Параметри
Назва | Тип | Деталі |
---|---|---|
shadowId | String | ідентифікатор елемента тіньового кореня |
using | string | дійсна стратегія розташування елемента |
value | string | фактичний селектор, який буде використовуватися для пошуку елемента |
Приклад
loading...
Повертає
- <object>
element
: JSON-представлення об'єкта тіньового елемента, наприклад,{ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT_1' }
.
findElements
Команда Find Elements використовується для пошуку елементів у поточному контексті перегляду, які можна використовувати для майбутніх команд. Ця команда повертає масив JSON-представлень елементів, які можна передати команді $ для перетворення посилання на розширений елемент WebdriverIO (див. findElement).
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: $$. Рекомендується використовувати цю команду замість протоколу.
Використання
browser.findElements(using, value)
Параметри
Назва | Тип | Деталі |
---|---|---|
using | string | дійсна стратегія розташування елемента |
value | string | фактичний селектор, який буде використовуватися для пошуку елемента |
Приклад
loading...
Повертає
- <object[]>
elements
: (Можливо пустий) JSON-список представлень об'єкта елемента, наприклад,[{ 'element-6066-11e4-a52e-4f735466cecf': 'ELEMENT_1' }]
.
findElementsFromShadowRoot
Команда Find Elements використовується для пошуку елементів всередині тіньового кореня елемента, які можна використовувати для майбутніх команд. Ця команда повертає масив JSON-представлень елементів, які можна передати команді $ для перетворення посилання на розширений елемент WebdriverIO (див. findElement).
Команда протоколу WebDriver. Більше деталей можна знайти в офіційній документації протоколу.
Ця команда протоколу вбудована в наступний зручний метод: shadow$$. Рекомендується використовувати цю команду замість протоколу.
Використан ня
browser.findElementsFromShadowRoot(shadowId, using, value)