web-dev-qa-db-fra.com

Trouver un élément par Xpath qui contient du texte

Cela fonctionne bien si je recherche une seule chaîne:

var element = Driver.FindElement(By.XPath("//a[contains(text(), 'About us')]"));

Mais pourrais-je avoir une déclaration ou comme dans l'exemple ci-dessous?

var element = Driver.FindElement(By.XPath("//a[contains(text(), 'About us' or 'about us')]")); 
5
Naughty Ninja

dire or entre deux appels de la fonction contains

//a[contains(text(), 'About us') or contains(text(), 'about us')]

ou utilisez la fonction translate pour rendre xpath insensible à la casse

//a[contains(translate(text(), 'ABOUTS', 'abouts'), 'about us')]
11
splash58

Ci-dessous satisfait à votre exigence: -

// a [contient (., 'À propos de nous') ou contient (., 'à propos de nous')] 

Référez-vous à: - https://sqa.stackexchange.com/questions/10342/how-to-find-element-usement-contains-in-xpath pour plus de détails.

1
Vishal Jagtap