action
Команда action представляет собой низкоуровневый интерфейс для предоставления виртуализированных действий устройства ввода в веб-браузере.
В дополнение к высокоуровневым командам, таким как scrollIntoView
, doubleClick
, API действий предоставляет детальный
контроль над тем, что именно могут делать назначенные устройства ввода. WebdriverIO предоставляет интерфейс для 3 типов источников ввода:
- клавишный ввод для клавиатурных устройств
- указательный ввод для мыши, пера или сенсорных устройств
- и колесиковый ввод для устройств с колесом прокрутки
Каждая цепочка команд действий должна завершаться вызовом perform
, чтобы запустить набор действий. Это
вызывает освобождение действий и запуск событий. Вы можете
пропустить это, передав true
(например, browser.actions(...).perform(true)
).
Источник клавишного ввода
Источник клавишного ввода - это источник ввода, связанный с устройством типа клавиатуры. Его можно вызвать
используя параметр типа key
. Например:
browser.action('key')
Он возвращает объект KeyAction
, который поддерживает следующие действия:
down(value: string)
: генерирует действие нажатия клавишиup(value: string)
: генерирует действие отпускания клавишиpause(ms: number)
: указывает, что источник ввода ничего не делает в течение определенного тика
Специальные символы
Если вы хотите использовать специальные символы, такие как Control
, Page Up
или Shift
, убедитесь, что импортировали
объект Key
из пакета webdriverio
следующим образом:
import { Key } from 'webdriverio'
Этот объект позволяет получить доступ к юникод-представлению нужного специального символа.
Источник указательного ввода
Источник указательного ввода - это источник ввода, связанный с устройством типа указателя. Тип может быть
указан при вызове команды action
, например:
browser.action('pointer', {
parameters: { pointerType: 'mouse' } // "mouse" - значение по умолчанию, также возможны: "pen" или "touch"
})
Он возвращает объект PointerAction
, который поддерживает следующие действия:
down (button: 'left' | 'middle' | 'right')
: создает действие для нажатия одной кнопкиdown (params: PointerActionParams)
: создает действие для нажатия одной кнопки с детальными параметрамиmove (x: number, y: number)
: Создает действие для перемещения указателя наx
иy
пикселей от области просмотраmove (params: PointerActionMoveParams)
: Создает действие для перемещения указателя наx
иy
пикселей от указанногоorigin
.origin
может быть определен как текущее положение указателя (например, "pointer"), область просмотра (например, "viewport") или центр определенного элемента.up (button: 'left' | 'middle' | 'right')
: создает действие для отпускания одной кнопкиup (params: PointerActionUpParams)
: создает действие для отпускания одной кнопки с детальными параметрамиcancel()
: Действие, отменяющее текущий ввод этого указателя.pause(ms: number)
: указывает, что источник ввода ничего не делает в течение определенного тика
Вы можете найти подробную информацию о типах параметров PointerActionParams
, PointerActionMoveParams
и PointerActionUpParams
в определении типов проекта.