我想知道是否存在解决方案来获取屏幕上是否存在Web元素的文本?
我现在正在自动化的应用程序有时会显示带有错误代码的意外错误警报。我想创建一个侦听器,以获取错误警报的文本(如果显示)并将其打印到控制台中。
我正在将TestNG框架与Selenium WebDriver和Java一起使用。
我试图在网络上找到任何解决方案,但没有一个解决我的问题。只是找到了一种方法来对测试失败进行屏幕截图,但这并不能真正解决我的问题。
答案 0 :(得分:0)
检查WebElement的长度计数。如果长度计数大于0,则获取元素的文本。让我知道它的运行方式。检查text
是否返回null,然后尝试innerHTML
属性。
WebDriverWait wait=new WebDriverWait(driver, 30);
List<WebElement> errelements =wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath("xpath of locator")));
if(errelements.size()>0)
{
System.out.println(errelements.get(0).getText());
System.out.println(errelements.get(0).getAttribute("innerHTML"));
}