Webdriverio: Sélecteur pour trouver n'importe quel élément par texte/texte partiel ?

Créé le 3 oct. 2017  ·  4Commentaires  ·  Source: webdriverio/webdriverio

Le problème

Je voudrais interroger des éléments par texte ou par correspondance de texte partielle sans restriction sur le type d'élément. Ceci est utile dans les étapes de concombre telles que /^I click the "(.*)" button$/ , où le bouton peut être implémenté avec une balise <a> , <button> ou <input> .

Je peux également souhaiter rechercher du texte sur une page, par exemple "Vous avez été déconnecté", mais cela pourrait être intégré dans presque n'importe quel élément, auquel cas il n'est pas pratique d'énumérer toutes les balises possibles et de rechercher le texte avec chacune .

D'après la documentation, il ne semble pas que cela soit possible sans spécifier un type d'élément, existe-t-il un moyen? Peut-il y en avoir un ?

Environnement

  • Version WebdriverIO : 4.8.0
  • Version de Node.js : 6.11.3
  • Mode autonome

Tous les 4 commentaires

@peterjwest, vous pouvez essayer *=some text . Si cela ne fonctionne pas, vous devez utiliser xpath. Il existe des tutoriels sur Internet sur la façon d'utiliser xpath pour interroger un élément aléatoire avec un texte spécifique. Veuillez vous joindre à notreGitter pour ce genre de questions. Ce n'est pas nécessairement un problème.

C'est très élevé dans les résultats de Google, alors voici un exemple pratique :

browser.getText("//*[contains(text(),'Hello')]")

https://stackoverflow.com/a/2994336/4176104

Merci!

*=some text fonctionne pour moi (v4.13.2).

@christian-bromann pourquoi n'étiez-vous pas sûr que cela fonctionnerait ? Était-ce lié à la version de Webdriverio utilisée ?

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

KOPTE3 picture KOPTE3  ·  3Commentaires

sarahdayan picture sarahdayan  ·  4Commentaires

grofit picture grofit  ·  4Commentaires

Pylipala picture Pylipala  ·  4Commentaires

eawer picture eawer  ·  4Commentaires