Перейти к основному содержанию

Chromium

isAlertOpen

Проверяет, открыт ли простой диалог в данный момент.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.isAlertOpen()
Пример
console.log(browser.isAlertOpen()); // выводит: false
browser.execute('window.alert()');
console.log(browser.isAlertOpen()); // выводит: true
Возвращает
  • <Boolean> isAlertOpen: true или false в зависимости от того, присутствует ли простой диалог или нет.

isAutoReporting

Проверяет, автоматически ли генерируются ошибки в логах браузера.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.isAutoReporting()
Возвращает
  • <Boolean> isAutoReporting: true или false в зависимости от того, включено ли автоматическое оповещение.

setAutoReporting

Переключает, возвращать ли ответ с неизвестной ошибкой при первой ошибке браузера (например, не удалось загрузить ресурс из-за ответа 403/404) для всех последующих команд (после включения).

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.setAutoReporting(enabled)
Параметры
ИмяТипОписание
enabledbooleantrue, если автоматическое оповещение должно быть включено, используйте false для отключения ранее включенного автоматического оповещения.
Примеры
// Включить автоматическое оповещение сразу после инициализации сессии с пустыми логами браузера
console.log(browser.setAutoReporting(true)); // выводит: null
// При запросе несуществующего ресурса выполнение прервется из-за выброшенной неизвестной ошибки
browser.url('https://webdriver.io/img/404-does-not-exist.png');
// В течение сессии выполнить некоторые операции, которые заполняют логи браузера
browser.url('https://webdriver.io/img/404-does-not-exist.png');
browser.url('https://webdriver.io/403/no-access');
// Включить автоматическое оповещение, которое выбрасывает неизвестную ошибку для первой ошибки браузера (ответ 404)
browser.setAutoReporting(true);
Возвращает
  • <Object|Null> firstBrowserError: В случае, если первая ошибка браузера уже произошла до выполнения этой команды, будет выброшена неизвестная ошибка в ответе, которая представляет собой объект с ключом 'message', описывающим первую ошибку браузера. В противном случае возвращает null в случае успеха.

isLoading

Определяет статус загрузки для активного окна.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.isLoading()
Пример
console.log(browser.isLoading()); // выводит: false
browser.newWindow('https://webdriver.io');
console.log(browser.isLoading()); // выводит: true
Возвращает
  • <Boolean> isLoading: true или false в зависимости от того, загружается ли активное окно или нет.

takeHeapSnapshot

Делает снимок кучи текущего контекста выполнения.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.takeHeapSnapshot()
Возвращает
  • <Object> heapSnapshot: JSON-представление снимка кучи. Его можно проверить, загрузив как файл в Chrome DevTools.

getNetworkConnection

Получает тип соединения для эмуляции сети. Эта команда применима только в том случае, если удаленный конец отвечает с возможностью networkConnectionEnabled, установленной в true.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getNetworkConnection()
Пример
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Эмуляция сети требует режима устройства, который включается только при включенной эмуляции мобильного устройства
mobileEmulation: { deviceName: 'iPad' },
},
}
});
console.log(browser.getNetworkConnection()); // выводит: 6 (Как Wi-Fi, так и мобильные данные)
Возвращает
  • <Number> connectionType: Битовая маска для представления типа сетевого соединения. Режим полета (1), только Wi-Fi (2), Wi-Fi и данные (6), 4G (8), 3G (10), 2G (20). По умолчанию Wi-Fi и данные включены.

setNetworkConnection

Изменить тип соединения для сетевого соединения. Эта команда применима только в том случае, если удаленный конец отвечает с возможностью networkConnectionEnabled, установленной в true.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.setNetworkConnection(parameters)
Параметры
ИмяТипОписание
parametersobjectОбъект, содержащий ConnectionType, установите битовую маску в качестве значения для ключа type в объекте. Режим полета (1), только Wi-Fi (2), Wi-Fi и данные (6), 4G (8), 3G (10), 2G (20).
Пример
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Эмуляция сети требует режима устройства, который включается только при включенной эмуляции мобильного устройства
mobileEmulation: { deviceName: 'iPad' },
},
}
});
console.log(browser.setNetworkConnection({ type: 1 })); // выводит: 1 (Режим полета)
Возвращает
  • <Number> connectionType: Битовая маска для представления типа сетевого соединения. Значение должно соответствовать указанному type в объекте, однако устройство может не поддерживать запрошенный тип сетевого соединения.

getNetworkConditions

Получает текущие сетевые условия, используемые для эмуляции.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getNetworkConditions()
Возвращает
  • <Object> networkConditions: Объект, содержащий сетевые условия для offline, latency, download_throughput и upload_throughput. Сетевые условия должны быть установлены до того, как их можно будет получить.

setNetworkConditions

Устанавливает сетевые условия, используемые для эмуляции, путем регулирования соединения.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.setNetworkConditions(network_conditions, network_name)
Параметры
ИмяТипОписание
network_conditionsobjectОбъект, содержащий сетевые условия, которые представляют собой latency, throughput (или download_throughput/upload_throughput) и offline (опционально).
network_name
optional
stringНазвание пресета регулирования сети. GPRS, Regular 2G, Good 2G, Regular 3G, Good 3G, Regular 4G, DSL, WiFi или No throttling для отключения. Когда пресет указан, значения, переданные в первом аргументе, не учитываются.
Примеры
// Использовать разные значения скорости загрузки (25 кб/с) и выгрузки (50 кб/с) для регулирования с задержкой 1000 мс
browser.setNetworkConditions({ latency: 1000, download_throughput: 25600, upload_throughput: 51200 });
// Принудительно отключиться от сети, установив 'offline' в true
browser.setNetworkConditions({ latency: 0, throughput: 0, offline: true });
// Когда указано название пресета (например, 'DSL'), он не учитывает значения в объекте (например, 'offline')
browser.setNetworkConditions({ latency: 0, throughput: 0, offline: true }, 'DSL');
// Лучшая практика для указания пресета регулирования сети - использовать пустой объект
browser.setNetworkConditions({}, 'Good 3G');

deleteNetworkConditions

Отключает любое регулирование сети, которое могло быть установлено. Эквивалентно установке пресета No throttling.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.deleteNetworkConditions()

sendCommand

Отправляет команду отладчику DevTools.
Список доступных команд и их параметров можно найти в Chrome DevTools Protocol Viewer.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.sendCommand(cmd, params)
Параметры
ИмяТипОписание
cmdstringНазвание команды (например, Browser.close).
paramsobjectПараметры команды. Если у команды нет параметров, укажите пустой объект.

sendCommandAndGetResult

Отправляет команду отладчику DevTools и ожидает результат.
Список доступных команд и их параметров можно найти в Chrome DevTools Protocol Viewer.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.sendCommandAndGetResult(cmd, params)
Параметры
ИмяТипОписание
cmdstringНазвание команды, которая возвращает результат (например, Network.getAllCookies).
paramsobjectПараметры команды. Если у команды нет параметров, укажите пустой объект.
Возвращает
  • <*> result: Либо возвращаемое значение вашей команды, либо ошибка, которая была причиной сбоя вашей команды.

file

Загружает файл на удаленную машину, на которой запущен браузер.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.file(file)
Параметры
ИмяТипОписание
filestringBase64-кодированный ZIP-архив, содержащий один файл для загрузки. Если base64-кодированные данные не представляют собой ZIP-архив или архив содержит более одного файла, будет выброшена неизвестная ошибка.
Возвращает
  • <String> path: Абсолютный путь загруженного файла на удаленной машине.

launchChromeApp

Запускает приложение Chrome по указанному идентификатору.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.launchChromeApp(id)
Параметры
ИмяТипОписание
idstringИдентификатор расширения приложения, которое нужно запустить, как определено в chrome://extensions.
Пример
import fs from 'fs'
const browser = remote({
capabilities: {
browserName: 'chrome',
'goog:chromeOptions': {
// Установить при запуске браузера для возможности запуска
extensions: [
// Запись должна быть упакованным приложением Chrome (.crx) в формате base64
fs.readFileSync('/absolute/path/app.crx').toString('base64')
]
}
}
});
browser.launchChromeApp('aohghmighlieiainnegkcijnfilokake')); // Google Docs (https://chrome.google.com/webstore/detail/docs/aohghmighlieiainnegkcijnfilokake)

getElementValue

Получает значение данного элемента управления формы.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getElementValue(elementId)
Параметры
ИмяТипОписание
elementIdStringидентификатор элемента, из которого получать значение
Возвращает
  • <String|Null> value: Текущее значение элемента. Если указанный элемент не является элементом управления формы, будет возвращено null.

elementHover

Включает состояние наведения для элемента, которое сбрасывается при следующем взаимодействии.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.elementHover(elementId)
Параметры
ИмяТипОписание
elementIdStringидентификатор элемента, на который нужно навести курсор

touchPinch

Вызывает эффект масштабирования щипком.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.touchPinch(x, y, scale)
Параметры
ИмяТипОписание
xnumberx-координата для щипка
ynumbery-координата для щипка
scalenumberмасштаб увеличения щипком

freeze

Замораживает текущую страницу. Расширение для Page Lifecycle API.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.freeze()

resume

Возобновляет работу текущей страницы. Расширение для Page Lifecycle API.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.resume()

getCastSinks

Возвращает список приемников Cast (устройств Cast), доступных медиа-маршрутизатору Chrome.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getCastSinks()
Возвращает
  • <string[]> sinks: Список доступных приемников.

selectCastSink

Выбирает приемник Cast (устройство Cast) в качестве получателя намерений медиа-маршрутизатора (подключение или воспроизведение).

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.selectCastSink(sinkName)
Параметры
ИмяТипОписание
sinkNamestringИмя целевого устройства.

startCastTabMirroring

Инициирует зеркальное отображение вкладки для текущей вкладки браузера на указанном устройстве.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.startCastTabMirroring(sinkName)
Параметры
ИмяТипОписание
sinkNamestringИмя целевого устройства.

getCastIssueMessage

Возвращает сообщение об ошибке, если есть какая-либо проблема в сессии Cast.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getCastIssueMessage()
Возвращает
  • <String> message: Сообщение об ошибке, если таковое имеется.

stopCasting

Останавливает трансляцию с медиа-маршрутизатора на указанное устройство, если подключено.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.stopCasting(sinkName)
Параметры
ИмяТипОписание
sinkNamestringИмя целевого устройства.

shutdown

Завершение процесса ChromeDriver и, как следствие, прекращение всех активных сессий.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.shutdown()

takeElementScreenshot

Команда Take Element Screenshot делает снимок видимой области, охватываемой ограничивающим прямоугольником элемента.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.takeElementScreenshot(elementId, scroll)
Параметры
ИмяТипОписание
elementIdStringидентификатор элемента, возвращенный в предыдущем вызове Find Element(s)
scroll
optional
booleanпрокрутить в вид элемент. По умолчанию: true
Возвращает
  • <String> screenshot: Данные изображения PNG в кодировке base64, составляющие снимок видимой области ограничивающего прямоугольника элемента после того, как он был прокручен в поле зрения.

getLogTypes

Получает доступные типы логов.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getLogTypes()
Возвращает
  • <String[]> logTypes: Список доступных типов логов, например: browser, driver.

getLogs

Получает лог для заданного типа лога. Буфер лога сбрасывается после каждого запроса.

Неофициальная и недокументированная команда Chromium. Дополнительную информацию об этой команде можно найти здесь.

Использование
browser.getLogs(type)
Параметры
ИмяТипОписание
typestringтип лога
Возвращает
  • <Object[]> logs: Список записей лога.

Welcome! How can I help?

WebdriverIO AI Copilot