转:WebDriver(Selenium2) 判断页面是否刷新的方法

Java代码  收藏代码
  1. public static boolean waitPageRefresh(WebElement trigger) {  
  2.     int refreshTime = 0;  
  3.     boolean isRefresh = false;  
  4.     try {  
  5.         for (int i = 1; i < 60; i++) {  
  6.             refreshTime = i;  
  7.             trigger.getTagName();  
  8.             Thread.sleep(1000);  
  9.         }  
  10.     } catch (StaleElementReferenceException e) {  
  11.         isRefresh = true;  
  12.         System.out.println("Page refresh time is:" + refreshTime + " seconds!");  
  13.         return isRefresh;  
  14.     } catch (WebDriverException e) {  
  15.         e.printStackTrace();  
  16.     } catch (InterruptedException e) {  
  17.         e.printStackTrace();  
  18.     }  
  19.     System.out.println("Page didnt refresh in 60 seconds!");  
  20.     return isRefresh;  
  21. }}  


说明: 从selenium 2.16开始 增加了StaleElementReferenceException异常。在页面元素进行刷新后,再次对此元素进行操作则会抛出这个异常。所以可以根据这个作为标识判断页面是否刷新。或者是否跳转到下一个页面。能灵活设定等待时间。并且能够统计刷新时间。

原文地址:https://www.cnblogs.com/lci05/p/3837245.html