【发布时间】:2019-10-21 16:58:56
【问题描述】:
我使用的是 java 版本“1.8.0_191”和 selenium 3.141.59。
我正在尝试找出页面是否包含“error”或“erreur”一词。另外,我希望它不区分大小写。
查找文本很容易:
List<WebElement> elementList = driver.findElements(By.xpath("//*[contains(text(), 'error')]"));
我很难让它不区分大小写。到目前为止,我尝试过这个(灵感来自this question):
List<WebElement> elementList = driver.findElements(By.xpath("/html/body//text()[contains(translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), 'error')]"));
但它返回以下错误:
org.openqa.selenium.WebDriverException: TypeError: Expected an element or WindowProxy, got: [object Text] {}
我也试过这个:
List<WebElement> elementList = driver.findElements(By.xpath("//*[contains(transate(text(), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), 'error')]"));
但它也不起作用(因为它不是合法的表达方式)。
那么,你有什么想法可以做到这一点吗?
【问题讨论】:
标签: java selenium xpath uppercase xpath-1.0