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

addCommand

Обзор

Используйте команду addCommand, чтобы добавить свою команду к браузеру (browser) или к элементу (element). Добавляемая команда может быть как синхронной, так и асинхронной.

к сведению

Подробнее о том, как добавлять свои кастомные команды, читайте в рецепте «Как добавить свои команды».

Использование

await browser.addCommand(name, callback, elementScope);

Параметры команды

ИмяТипОписание
nameStringИмя кастомной команды.
callbackFunctionФункция-реализация команды.
elementScopeBooleanЕсли значение true, то добавить команду к элементу, а не к браузеру. По умолчанию: false.

Примеры использования

// добавляем команду getUrlAndTitle
await browser.addCommand("getUrlAndTitle", async function (customParam) {
return {
url: await this.getUrl(), // `this` здесь и ниже относится к объекту "browser"
title: await this.getTitle(),
customParam: customParam,
};
});

// используем новую команду getUrlAndTitle
it("should use my add command", async ({ browser }) => {
await browser.url("https://webdriver.io");

const result = await browser.getUrlAndTitle("foobar");

assert.strictEqual(result.url, "https://webdriver.io");
assert.strictEqual(
result.title,
"WebdriverIO · Next-gen browser and mobile automation test framework for Node.js",
);
assert.strictEqual(result.customParam, "foobar");
});