【发布时间】:2017-04-28 18:11:11
【问题描述】:
我知道我可以使用(driver.findElements(By.xpath("Xpath Value")).size() != 0);
但是,我使用的是页面对象模型,其全部目的是在单独的类中预定义 WebElement,因此我不必在我的测试类中“查找元素”。
这是我目前拥有的
if (objPage.webElement.isEnabled()){
System.out.println("found element");
}else{
System.out.println("element not found");
}
但是,这会尝试识别可能不存在的 WebElement。当它不存在时,我得到:
没有这样的元素”例外。
【问题讨论】:
-
在对可能不存在的元素使用 FindBy 注释时尝试使用 List
?如果不是,大小将为零。 -
@Grasshopper 这是一个很好的答案!你为什么不让它成熟而不是简单的评论?
-
@Cryptor JeffC 的回答具有相同的逻辑,我认为这是处理这些情况的正确方法。
-
@Grasshopper 对不起,如果没有得到什么,但是如何在没有 WebDriver 元素的 Page Object 模型中使用它,因为类是使用 PageFactory.initElements() 方法初始化?
-
@Cryptor 添加一个新问题。
标签: java selenium selenium-webdriver pageobjects