Index: ssts-selenium-test/src/test/java/test_4_1/tools/Utils.java =================================================================== diff -u -r17833 -r17835 --- ssts-selenium-test/src/test/java/test_4_1/tools/Utils.java (.../Utils.java) (revision 17833) +++ ssts-selenium-test/src/test/java/test_4_1/tools/Utils.java (.../Utils.java) (revision 17835) @@ -92,7 +92,7 @@ */ public static void setWaitSetting(WebDriver driver){ //最长等待15秒,每1秒轮询一次 - waitSetting = new WebDriverWait(driver, 15, 1000); + waitSetting = new WebDriverWait(driver, 15, 800); //最长等待2秒,每0.3秒轮询一次 confirmWaitSetting = new WebDriverWait(driver, 2, 300); // waitSetting = new FluentWait<>(driver).withTimeout(5000, TimeUnit.MILLISECONDS).pollingEvery(250, TimeUnit.MILLISECONDS); @@ -355,24 +355,23 @@ * @return 查找到的节点,如果在指定的时间找不到则不会返回,直接抛出异常 */ public static WebElement findByAwait(By by, WebDriverWait wait) { - WebElement webElement = null; + final WebElement[] webElement = {null}; try { - JavascriptExecutor js=(JavascriptExecutor)driver; - js.executeScript("return document.readyState").equals("complete"); //这里找不到会抛出异常 if (wait.until((ExpectedCondition) driver -> { - WebElement element = driver.findElement(by); - return element != null && element.isDisplayed(); + webElement[0] = driver.findElement(by); + return webElement[0] != null && webElement[0].isDisplayed(); })) { - webElement = driver.findElement(by); + // webElement[0] = driver.findElement(by); } } catch (Exception e) { throw new NoSuchElementException(String.format("找不到对应的元素:%s,原因如下:\n%s", by, e)); } - return webElement; + return webElement[0]; } + /** * 先用confirmWaitSetting去找ExtJs的confirm框,如果找得到则点击确认,抛出异常则不点击(用于判断是否需要点击确认框) */