Vai al contenuto principale

$

Il comando $ è un modo breve e pratico per recuperare un singolo elemento nella pagina.

informazione

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

Puoi anche passare un oggetto come selettore dove l'oggetto contiene una proprietà element-6066-11e4-a52e-4f735466cecf con il valore di un riferimento a un elemento. Il comando trasformerà quindi il riferimento in un elemento WebdriverIO esteso.

Nota: concatenare i comandi $ e $$ ha senso solo quando utilizzi più strategie di selezione. Altrimenti farai richieste non necessarie che rallentano il test (ad esempio, $('body').$('div') attiverà due richieste mentre $('body div') fa letteralmente la stessa cosa con una sola richiesta)

Puoi concatenare $ o $$ insieme 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()
informazione

Per ulteriori 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 un determinato elemento
Esempi
example.html
loading...
singleElements.js
loading...
singleElements.js
loading...
singleElements.js
loading...
$.js
it('should use Androids DataMatcher or ViewMatcher selector', async () => {
const menuItem = await $({
"name": "hasEntry",
"args": ["title", "ViewTitle"],
"class": "androidx.test.espresso.matcher.ViewMatchers"
});
await menuItem.click();

const menuItem = await $({
"name": "hasEntry",
"args": ["title", "ViewTitle"]
});
await menuItem.click();
});
Restituisce
  • <WebdriverIO.Element>

Welcome! How can I help?

WebdriverIO AI Copilot