Saltar al contenido principal

$

El comando $ es una forma corta y práctica para recuperar un solo elemento en la página.

información

A diferencia del $ adjunto al objeto browser este comando consulta un elemento basado en un elemento raíz.

También puedes pasar un objeto como selector donde el objeto contiene una propiedad element-6066-11e4-a52e-4f735466cecf con el valor de una referencia a un elemento. El comando transformará la referencia a un elemento WebdriverIO extendido.

Nota: encadenar comandos $ y $$ solo tiene sentido cuando usas múltiples estrategias de selector. De lo contrario, realizarás solicitudes innecesarias que ralentizarán la prueba (por ejemplo, $('body').$('div') activará dos solicitudes mientras que $('body div') hace literalmente lo mismo con solo una solicitud)

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

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

WebdriverIO atraviesa perfectamente las shadow roots cuando utiliza los comandos $ o $$, independientemente del nivel de anidamiento o 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()
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 buscar un determinado elemento
Ejemplos
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();
});
Devuelve
  • <WebdriverIO.Element>

Welcome! How can I help?

WebdriverIO AI Copilot