Aller au contenu principal

execute

Injecte un extrait de JavaScript dans la page pour l'exécution dans le contexte du cadre actuellement sélectionné en utilisant l'élément donné comme portée. Comme cette commande est dans la portée de l'élément, cela signifie que WebdriverIO attendra automatiquement que l'élément existe avant d'exécuter le script. Le script exécuté est supposé être synchrone et le résultat de l'évaluation du script est renvoyé au client.

L'argument script définit le script à exécuter sous forme de corps de fonction. La valeur renvoyée par cette fonction sera retournée au client. La fonction sera invoquée avec le tableau d'arguments fourni et les valeurs peuvent être accessibles via l'objet arguments dans l'ordre spécifié.

Les arguments peuvent être n'importe quelle primitive JSON, tableau ou objet JSON. Les objets JSON qui définissent une référence WebElement seront convertis en l'élément DOM correspondant. De même, tous les WebElements dans le résultat du script seront renvoyés au client sous forme d'objets JSON WebElement.

Utilisation
$(selector).execute(script, arguments)
Paramètres
NomTypeDétails
scriptString, FunctionLe script à exécuter.
arguments
optionnel
*arguments du script
Exemple
execute.js
it('should wait for the element to exist, then executes javascript on the page with the element as first argument', async () => {
const text = await $('div').execute((elem, a, b, c, d) => {
return elem.textContent + a + b + c + d
}, 1, 2, 3, 4);
// node.js context - client and console are available
console.log(text); // outputs "Hello World1234"
});
Retourne
  • <*> return: Le résultat du script.

Welcome! How can I help?

WebdriverIO AI Copilot