execute
Обзор
Используйте execute
, чтобы выполнить синхронно указанный JavaScript-код на странице текущего выбранного фрейма.
Команда возвращает клиенту результат выполнения скрипта.
Аргумент script
определяет сценарий для выполнения в виде тела функции. Значение, возвращаемое этой функцией, будет возвращено клиенту. Функция будет вызвана с предоставленным массивом args
, и доступ к значениям может быть получен через объект arguments
в указанном порядке.
Аргументами могут быть любые JSON-примитивы, массивы или объекты JSON. Объекты JSON, которые определяют ссылку на WebElement, будут преобразованы в соответствующий элемент DOM. Аналогично, любые WebElements в результате скрипта будут возвращены клиенту в виде объектов WebElement JSON.
Использование
await browser.execute(script, arguments);
Параметры команды
Имя | Тип | Описание |
script | String или Function | Скрипт, который необход имо выполнить. |
arguments | Any | Необязательный параметр. Аргументы для скрипта. |
Примеры использования
it("should inject javascript on the page", async ({ browser }) => {
const result = await browser.execute(
(a, b, c, d) => {
// здесь мы в browser-контексте: доступа к консоли и к клиенту у нас нет
return a + b + c + d;
},
1,
2,
3,
4,
);
// здесь мы в node.js-кон тексте: доступ к консоли и к клиенту у нас есть
console.log(result); // выведет: 10
});