Saltar al contenido principal

$$

El comando $$ es una forma corta y práctica para obtener múltiples elementos en la página. Devuelve un ChainablePromiseArray que contiene un conjunto de elementos de WebdriverIO.

información

A diferencia del $$ adjunto al objeto browser, este comando consulta elementos basándose en un elemento raíz.

Puedes encadenar $ o $$ sin envolver los comandos individuales en await para navegar por el árbol DOM, por ejemplo:

const imageSrc = await $$('div')[1].nextElement().$$('img')[2].getAttribute('src')

WebdriverIO atraviesa sin problemas las shadow roots cuando se utilizan los comandos $ o $$, independientemente del nivel de anidamiento o del modo de shadow root, por ejemplo:

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()

También es posible utilizar iteradores asincrónicos para recorrer el resultado de la consulta, por ejemplo:

// print all image sources
for await (const img of $$('img')) {
console.log(await img.getAttribute('src'))
}
información

Para más información sobre cómo seleccionar elementos específicos, consulta la guía de Selectores.

Uso
$(selector).$$(selector)
Parámetros
NombreTipoDetalles
selectorString, Function, Matcherselector, función JS o objeto Matcher para obtener múltiples elementos
Ejemplos
example.html
loading...
multipleElements.js
loading...
multipleElements.js
loading...
multipleElements.js
loading...
Devuelve
  • <WebdriverIO.ElementArray>

Welcome! How can I help?

WebdriverIO AI Copilot