Selenium - 错误处理而不抛出异常

时间:2018-02-22 12:27:27

标签: selenium selenium-chromedriver

我正在尝试删除屏幕上的一个对象,一旦它消失,请检查它是否仍在网页中以确保它已消失。

通过这样做:

WebElement objectToDelete = GetElementFromDriver("object-to-delete");
objectToDelete.delete(); //in some other way which results in it being gone.
objectToDelete = GetElementFromDriver("object-to-delete");

我尝试用try& amp;抓住,但我不断得到例外。 例如:

try{
objectToDelete = GetElementFromDriver("object-to-delete");
} catch(Exception e){
return null;}

我错过了什么?甚至可能以不同的方式做我想做的事情吗?

谢谢!

如果需要,我会添加我的chrome / driver / selenium版本,虽然我认为它们不相关。

2 个答案:

答案 0 :(得分:0)

您是否尝试过WebDriverWait"直到"和" until_not"方法 ? 例如:http://selenium-python.readthedocs.io/waits.html

答案 1 :(得分:-1)

解决方案 -

public static boolean isElementPresent throws Exception(String elementName, WebElement father){
    try{
       Utils.GetElementFromElement(By.className(elementName), 5, father);
       return true;
    } catch(NoSuchElementException e){
       return false;
    }
}