使用属性忽略大小写查找元素

时间:2016-09-16 10:02:43

标签: java selenium selenium-webdriver css-selectors

有没有办法使用一个不能区分大小写的属性来查找元素?

想想,我想通过这样的标题找到元素:

driver.findElement(By.cssSelector("input[title='This is a Test Title']")).sendKeys("Test");

但标题文字的更改不会影响我的WebElement

2 个答案:

答案 0 :(得分:3)

你可以通过xpath实现这一目标。请看下面的例子。

driver.findElement(By.xpath(".//input[translate(@title, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz') = 'this is my title']")).sendKeys("Test");

上面的xpath会将所有大写字母从title转换为小写,并检查它是否等于给定值。

答案 1 :(得分:-1)

首先选择元素

WebElement element=driver.findElement(By.cssSelector("input[title='This is a Test Title']"));

其次,你得到子元素

WebElement subElement=element.findElement(By.tagName("Your Tag Here").attr("Your Attribute"));

<强>最后

subElement.sendKey("Test");