首页 > 解决方案 > 显示异常的 findElement 方法

问题描述

我需要单击一个可能以 50% 的机会出现的按钮,决定try/catchfindElementBy. 然而try/catch不起作用,我遇到了一个例外。也许有一种更有效的方法来处理该按钮?

driver.manage().timeouts().implicitlyWait(5000, TimeUnit.MILLISECONDS);
WebDriverWait wait = new WebDriverWait(driver,5);
try {
    WebElement element = driver.findElement(By.xpath("buttonXpath"));
    element.click();
}
catch (NoSuchElementException e){ }

标签: javaseleniumtry-catchnosuchelementexception

解决方案


这将为您工作:

List<Webelement> element = driver.findElements(By.xpath("buttonXpath"));

if(element.size() > 0) {
    element.get(0).click();
}

推荐阅读