测试中经常要验证点击按钮在不在,是否可用 所以就封装成了一个小方法...
public void assertClickBy(By by) throws InterruptedException { WebElement element = waitElementBy(by); waitElementEnable(driver, by ,5); Assert.assertTrue(element.isEnabled()); element.click(); logger.log("click by :"+by); }
因为点击按钮可能因为没加载完成导致测试失败所以加上等待方法
public boolean waitElementEnable(WebDriver driver,final By by, int time) { final By elementBy = by; WebDriverWait wait = new WebDriverWait(driver, time); boolean isEnabled = wait.until(new ExpectedCondition<Boolean>() { @Override public Boolean apply(WebDriver d) { logger.log("start to wait find element is enable .by :" + elementBy); return d.findElement(elementBy).isEnabled(); } }); return isEnabled; }