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异常。在页面元素进行刷新后,再次对此元素进行操作则会抛出这个异常。所以可以根据这个作为标识判断页面是否刷新。或者是否跳转到下一个页面。能灵活设定等待时间。并且能够统计刷新时间。

转:WebDriver(Selenium2) 判断页面是否刷新的方法的更多相关文章

  1. WebDriver(Selenium2) 判断页面是否刷新的方法

    http://uniquepig.iteye.com/blog/1568208 public static boolean waitPageRefresh(WebElement trigger) { ...

  2. 如何机智判断页面是刷新还是关闭,背景:vue项目,需求:关闭页面,下次直接跳到登陆页

    最近项目有这么个需求:要在关闭当前系统的窗口的时候,退出登录, 因为如果不退出登录可能存在安全风险,其实我想说,电脑没事别借给别人活着离开工位记得一定要锁屏,其实我们设置了cookie失效时间的,过了 ...

  3. js判断页面加载完毕方法

    判断页面加载完成这个方法是很常见的,下面有三个常用的方法,各有利弊. 一.纯js方法 // (1).页面所有内容加载完成执行 window.onload = function(){ } // (2). ...

  4. webdriver中判断元素是否存在的方法

    selenium.webdriver中没有内置的判断元素是否存在的方法,所以定义一个方法,如果找到该元素则返回True,否则返回False: from selenium import webdrive ...

  5. 判断页面中的js方法是否存在,存在就调用它,不存在则忽略

    if(typeof queryResource != 'undefined' && queryResource instanceof Function) queryResource(a ...

  6. 用js判断页面刷新或关闭的方法

    Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定.区别在于on ...

  7. JQuery 实现页面无刷新

    对于JQuery实现页面无刷新的效果,即:应用这个JQuery这个组件,可以实现在页面上加载数据库中的数据信息,但是并没有给用户页面刷新的感觉,这样既可以有效的进行数据交互,也可以不妨碍用户的其他操作 ...

  8. C#分析搜索引擎URL得到搜索关键字,并判断页面停留时间以及来源页面

    前台代码: var start; var end; var state; var lasturl = document.referrer; start = new Date($.ajax({ asyn ...

  9. jquery实现页面局部刷新

    后台管理中总是使用frameset进行分成部分进行管理,但是感觉很不好用,尤其是页面间调转还要判断window.parent,太令我费神了,于是学习使用XMLHttpRequest进行页面局部刷新.代 ...

随机推荐

  1. C#中几种数据库的大数据批量插入

    C#语言中对SqlServer.Oracle.SQLite和MySql中的数据批量插入是支持的,不过Oracle需要使用Orace.DataAccess驱动. IProvider里有一个用于实现批量插 ...

  2. Linux下wps字体问题

    1.安装symbol-fonts_1.2_all.deb,自行搜索 2.卸载xfonts-mathml字体 sudo apt-get remove xfonts-mathml

  3. 用python写刷票程序

    刷票一般要突破以下限制: 1.验证码识别 2.同一ip不可连续投票 解决办法 1.用tesseract工具,链接在此 https://code.google.com/p/tesseract-ocr/  ...

  4. linux脚本Shell之九九乘法表

    说到9*9乘法表,许多朋友在想这是小学二年级就会的东西,不错,确实是这样,那么在linux下,使用shell打印出99乘法表应该如何编写脚本的? 笔者的文档今天就写下来,有需要的朋友可以参考下 代码: ...

  5. Chapter 2 Open Book——16

    By Friday I was perfectly comfortable entering my Biology class, nolonger worried that Edward would ...

  6. 引入的ajax中异步添加联系人

    申请出差控制器 中 填写联系人 直接在控制器中实例化联系人表,收集ajax提交的数据.插入表 public function addcontacts(){ $model = M('contacts') ...

  7. read file in a single line

    String text= new Scanner(File('input.txt')).useDelimiter("\\A").next(); java version!

  8. sql server 2000/2005递归

    /* 递归查询 塗聚文---SQL Server 2005环境下的实现: */--生成测试数据 create table Dept(ID int,ParentID int,msg varchar(20 ...

  9. File类与FileInfo类区别

    ile类是静态的,FileInfo不是静态的也没有静态的方法,仅可用于实例化的对象.FileInfo方法基本类似于File.关于二者,作何选择. ● 如果仅进行单一方法调用,则可以使用静态File类上 ...

  10. Linux SSH使用公钥私钥实现免登陆

    公钥和私钥(我是文盲,钥字之前都是读yao,这是多音字这里应该念yue),是成对出现的,一旦任何一个做了更改都会验证失败. 1.免登陆的实现:   使用下例中ssky-keygen和ssh-copy- ...