Vai al contenuto principale

$$

Il comando $$ è un modo breve e pratico per recuperare più elementi nella pagina. Restituisce un ChainablePromiseArray contenente un insieme di elementi WebdriverIO.

informazione

A differenza del $$ collegato all'oggetto browser, questo comando interroga gli elementi basandosi su un elemento radice.

Puoi concatenare i comandi $ o $$ senza avvolgere i singoli comandi in await per navigare nell'albero DOM, ad esempio:

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

WebdriverIO attraversa senza problemi le shadow root quando si utilizzano i comandi $ o $$, indipendentemente dal livello di annidamento o dalla modalità shadow root, per esempio:

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

È anche possibile utilizzare iteratori asincroni per scorrere il risultato della query, ad esempio:

// stampa tutte le sorgenti delle immagini
for await (const img of $$('img')) {
console.log(await img.getAttribute('src'))
}
informazione

Per maggiori informazioni su come selezionare elementi specifici, consulta la guida Selettori.

Utilizzo
$(selector).$$(selector)
Parametri
NomeTipoDettagli
selectorString, Function, Matcherselettore, funzione JS o oggetto Matcher per recuperare più elementi
Esempi
example.html
loading...
multipleElements.js
loading...
multipleElements.js
loading...
multipleElements.js
loading...
Restituisce
  • <WebdriverIO.ElementArray>

Welcome! How can I help?

WebdriverIO AI Copilot