在java中使用selenium webdriver验证其存在后,我们能以任何方式找到文本的位置
用于验证不存在的文本的代码:
driver.get("http://newtours.demoaut.com/");
driver.getPageSource().contains("Mercury Tours!");
if(true)
{
System.out.println("Test Case Pass");
}
else
System.out.println("Test Case Fail");
Mercury Tours!
是网页上的文字。现在获取text = true
后如何查找位置。
我尝试使用getLocation()
,但失败了。
请尽快告诉我解决方案。
答案 0 :(得分:1)
由于DOM结构的复杂性以及元素缺乏独特属性,我认为你应该只使用xpath来查找带有文本的元素。不幸的是,这是我现在看到的唯一选择,除非其他人有更好的建议。要求前端开发人员提供独特的属性,以便您可以轻松找到元素,而不是依赖元素的文本。
driver.get("http://newtours.demoaut.com/");
WebElement element = driver.findElement(By.xpath(".//font[contains(text(),'Mercury Tours')]"));
if(element.isDisplayed()) {
System.out.println("Test Case Pass");
} else
System.out.println("Test Case Fail");
}