http://uniquepig.iteye.com/blog/1568208
public static boolean waitPageRefresh(WebElement trigger) { int refreshTime = 0; boolean isRefresh = false; try { for (int i = 1; i < 60; i++) { refreshTime = i; trigger.getTagName(); Thread.sleep(1000); } } catch (StaleElementReferenceException e) { isRefresh = true; System.out.println("Page refresh time is:" + refreshTime + " seconds!"); return isRefresh; } catch (WebDriverException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("Page didnt refresh in 60 seconds!"); return isRefresh; }}
說明: 從selenium 2.16開始 增加了StaleElementReferenceException異常。在頁面元素進行刷新后,再次對此元素進行操作則會拋出這個異常。所以可以根據這個作為標識判斷頁面是否刷新。或者是否跳轉到下一個頁面。能靈活設定等待時間。並且能夠統計刷新時間。