$$
Команда $$
- це короткий та зручний спосіб отримання кількох елементів на сторінці.
Вона повертає ChainablePromiseArray
, що містить набір елементів WebdriverIO.
На відміну від $$
, приєднаного до об'єкта браузера,
ця команда запитує елементи на осно ві кореневого елемента.
Ви можете з'єднувати $
або $$
разом без обгортання окремих команд в await
, щоб
проходити по DOM-дереву, наприклад:
const imageSrc = await $$('div')[1].nextElement().$$('img')[2].getAttribute('src')
WebdriverIO безперешкодно проходить через тіньові DOM (shadow roots) при використанні команд $
або $$
, незалежно від рівня вкладеності або
режиму тіньового DOM, наприклад:
await browser.url('https://ionicframework.com/docs/usage/v8/datetime/basic/demo.html?ionic:mode=md')
await browser.$('button[aria-label="Sunday, August 4"]').click()
await browser.$('.aux-input').getValue()
Також можливо використовувати асинхронні ітератори для перебору результатів запиту, наприклад:
// виводить всі джерела зображень
for await (const img of $$('img')) {
console.log(await img.getAttribute('src'))
}
Для отримання додаткової інформації про те, як вибирати конкретні елементи, перегляньте посібник Селектори.
Використання
$(selector).$$(selector)
Параметри
Назва | Тип | Деталі |
---|---|---|
selector | String, Function, Matcher | селектор, JS-функція або об'єкт Matcher для отримання кількох елементів |
Приклади
loading...
loading...
loading...
loading...
Повертає
- <WebdriverIO.ElementArray>