当前位置: 首页 > 知识库问答 >
问题:

等待特定条件时由WebDriver刷新网页

章彬郁
2023-03-14

我正在寻找更优雅的方式在测试期间刷新网页(我使用Selenium2)。我只是发送F5键,但我想知道驱动程序是否有刷新整个网页的方法。这是我的代码

    while(driver.findElements(By.xpath("//*[text() = 'READY']")).size() == 0 )
        driver.findElement(By.xpath("//body")).sendKeys(Keys.F5);
        //element appear after text READY is presented      
    driver.findElement(By.cssSelector("div.column a")).click();    

对于在手动刷新的页面上查找元素,可能有更好的解决方案

共有3个答案

庞安晏
2023-03-14

python

使用内置方法

driver.refresh()

或者,执行JavaScript

driver.execute_script("location.reload()")
柯昆
2023-03-14

在Python中,有一种方法可以做到这一点:driver。刷新()。在Java中可能不一样。

或者,您可以驱动程序。得到(”http://foo.bar”;,尽管我认为刷新方法应该可以正常工作。

孟承嗣
2023-03-14

在Java或JavaScript中:

driver.navigate().refresh();

这将刷新页面。

 类似资料:
  • 问题内容: 我正在寻找一种更优雅的方法来在测试过程中刷新网页(我使用Selenium2)。我只是发送F5键,但我想知道驱动程序是否具有刷新整个网页的方法,这是我的代码 也许是在手动刷新的页面上查找元素的更好的解决方案 问题答案: 在Java或JavaScript中: 这应该刷新页面。

  • 我试图做的事情在节点js中可能是不可能的,但在我放弃之前,我想得到其他意见。 我有一个线程正在执行产品的设置。为了便于论证,让我们将其称为“主”线程。我希望在产品设置过程中可能发生的所有错误都被“主”线程捕获。如果安装成功,那么在我知道安装成功之前,我不希望“主”线程完成。 产品设置过程中的一个步骤涉及在客户的AWS帐户中创建CloudFormation堆栈。实现这一点的AWS函数是createS

  • 我第一次做硒测试。在主页上,我调用了一些AJAX,我希望Selenium等待元素加载完成。我不确定它是否有效,但我只是键入selenium,waitForCondition可以选择。 无论我选择什么,它总是返回“false”。我现在连等待条件都不工作吗? 我如何测试它是否有效?在这些代码中我做错了什么? 如果由自己的类实现,则返回“true” isElementPresent(By.xpath(“

  • 有时一个网页需要按着一定的时间间隔刷新,或是在一定时间后跳到其他的网页上。这种功能在定时从服务端获得数据;或是在短时间显示一个公告页,在一段时间后,跳到主页的情况下特别有用。 虽然实现定时刷新和定时跳转有很多方法,但使用HTTP响应消息头中的Refresh字段无疑是最简单的方法,通过设置这个字段的值,可以使当前网页每隔一定的时间刷新一次,还可以使当前网页在一定时间后跳转到其他的网页。如果只想定时刷

  • 我有一个页面,它用ajax加载动态内容,然后在一定时间后重定向(不固定)。我如何强制Selenium Webdriver等待页面重定向,然后立即转到另一个链接?

  • 问题内容: 我已经看到和在使用selenium的代码。使用轮询技术,即它将针对特定的每个固定间隔进行轮询。我想知道如何处理? 考虑以下Java示例: 监视器是否可单击,或者等待18秒钟再单击? 问题答案: 在您的示例中,在超时之前,将持续18秒(每0.5秒)查找一次“帐户”。 是的子类。在其中,您可以配置更多选项以及最长的等待时间,例如轮询间隔,忽略的异常等。此外,在您的代码中,您无需等待,然后可