Saltar al contenido principal

$

El comando $ es una forma corta y práctica para obtener un único elemento en la página.

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á entonces la referencia en un elemento WebdriverIO extendido.

Nota: encadenar comandos $ y $$ solo tiene sentido cuando utilizas 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 una sola solicitud)

Nota: utiliza estos objetos de elemento solo si estás seguro de que todavía existen en la página, por ejemplo, utilizando el comando isExisting. WebdriverIO no puede volver a obtenerlos dado que no hay información de selector disponible.

Usando el testrunner wdio este comando es una variable global, consulta Globals para más información. Usando WebdriverIO dentro de un script standalone estará ubicado en el objeto browser en su lugar (por ejemplo, browser.$$).

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

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

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

Uso
browser.$(selector)
Parámetros
NombreTipoDetalles
selectorString, Function, Matcherselector, función JS o objeto Matcher para obtener 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