小编use*_*634的帖子

使用webdriver查看元素是否存在而不抛出异常?

我是Selenium webdriver的新手,也许这个问题很明显.我是这样的情况:

如果该元素存在,请单击它并返回索引页面:

driver.findElement(By.id("...."])).click();
Run Code Online (Sandbox Code Playgroud)

如果不退出,请跳过它并返回索引页面.测试仍然没有任何异常抛出.

我知道一个解决方案:

driver.findElements( By.id("...") ).size() != 0
Run Code Online (Sandbox Code Playgroud)

所以我试过了:

if(driver.findElements(By.id("....")).size() > 0)
    {
        driver.findElement(By.id("....")).click();
        driver.findElement(By.cssSelector("...")).click();
    } 
else
    {
        driver.findElement(By.cssSelector("....")).click();
    }
Run Code Online (Sandbox Code Playgroud)

事实证明这很难看,因为如果我有10个要验证的元素,那么这个IF条件需要写10次.

任何解决方法,使它整洁?

java webdriver selenium-webdriver

8
推荐指数
1
解决办法
7407
查看次数

标签 统计

java ×1

selenium-webdriver ×1

webdriver ×1