Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/tools/Utils.java =================================================================== diff -u -r19165 -r19239 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/tools/Utils.java (.../Utils.java) (revision 19165) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/tools/Utils.java (.../Utils.java) (revision 19239) @@ -979,6 +979,7 @@ public static void waitForWindowAmountEquals(int expectedNumberOfWindows, int timeOut) { int initCount = driver.getWindowHandles().size(); + int actualSize = initCount; if (initCount == expectedNumberOfWindows) { return; } else { @@ -992,13 +993,16 @@ Thread.sleep(500); } catch (InterruptedException e) { } - if (driver.getWindowHandles().size() == expectedNumberOfWindows) { + actualSize = driver.getWindowHandles().size(); + if (actualSize == expectedNumberOfWindows) { reachExpectedWindowAmount = true; } duration = (System.currentTimeMillis() - startTime); } if (timeOut <= duration && !reachExpectedWindowAmount) { // Throw // Error + throw new RuntimeException("没有达到期望的窗口数量,实际窗口数量 = " + actualSize + + ",期望数量 = " + expectedNumberOfWindows); } } } @@ -1078,8 +1082,8 @@ try { // 回收窗口 String mainWindow = Utils.driver.getWindowHandle(); - // div通过JS点击,避免有时候不生效 - Utils.retryingFindAndClickByJavaScript(By.id("customIntoBasketDiv")); + // div通过API点击,避免有时候不生效 + Utils.retryingFindAndClick(By.id("customIntoBasketDiv")); Utils.waitForWindowAmountEquals(2, 8000); // 遍历所有窗口,切换至新窗口(自定义入筐窗口) Set handles = Utils.driver.getWindowHandles();