
Selenium刷新页面简介
Selenium有一个刷新命令,通过检查元素来刷新当前页面,它将加载所有的元素和组件来执行不止一次的网页,条件循环被用来帮助验证输入条件,它将只执行指定驱动程序上可用的方法,即Selenium Web驱动程序实例将被调用并用于刷新()方法,它将协调并映射到其他方法,如navigate()用于导航页面,如当前URL()用于获得测试需求的输入字符串。
什么是Selenium刷新页面?
驱动是Selenium中刷新页面最常用的方法之一。因为它可以通过名为Selenium的类和方法来执行和操作。 navigate()是一个允许你在网络上导航的函数。在Selenium中刷新页面的递归方式是get方法和navigate方法。Send Keys方法大多可以通过提供键盘中的F5键及其相应的ASCII码作为输入字符串来刷新页面,它可以被放置在文本框、标签和其他UI部件中。
Selenium刷新页面命令
我们需要无数次地刷新在线页面,同时用指定的元素自动化基于网络的应用程序,并通过整个网页加载它们,有可能在工作中,一些项目在最初的页面加载时没有加载。作为输出结果,我们必须在第一时间刷新网页,让所有的网站元素都加载到浏览器上。Selenium Web驱动中的刷新命令可以用来刷新网页,也可以用Selenium Web驱动的不同方法来分类。在Web驱动中,刷新和重新加载的方法用于在现有的Web浏览器中加载当前的网页,该窗口接受任何东西或使用浏览器返回任何东西。刷新()方法有时似乎是异步方法,不等待完成刷新任务,所以它被称为启动刷新功能,可以执行。
多次刷新页面的方法
因为它是用来重新加载网页的,它不能点击检查给定的某个元素的存在,因为它在页面重新加载之前和之后都会更多的存在。因此,我们可能会收到网页的真实信息,而它还没有开始加载网页。当我们需要检查WebElement.isDisplayed()时,在网页重新加载后,我们会得到一个名为StaleElementReferenceException的异常,其余的是要确保使用默认的方法来覆盖网页,如getName()是返回网页名称的内部方法。getMaximumLoadTime()是内部方法之一,它将用一些时间秒来返回网页的最大加载时间。verify()是一个内部程序,用于检查网页是否真正加载到浏览器上。大多数情况下,我们使用do/while循环来执行这些情况,首先我们必须执行do循环,然后执行while循环条件。这些循环在应用程序中只执行一次,因为超出的代码会调用navigate().refresh(),直到浏览器完全重新加载网页时才会被执行。每当使用第二种格式执行循环时,时间将被计算出来。
我们可以使用一个新的浏览器窗口或用相应的网址打开一个新的窗口,以使用newWindow命令。有时单个网站或应用程序有更多的模块,所以参数用于调用和利用用户输入,有时会自动刷新()相应的超时间隔的值。当与单个网页refresh()命令相比,它有更多的任务来执行操作。
例子 #1
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class New {
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Kripya-PC\\Downloads\\chromedriver_win32 (1)\\chromedriver.exe");
WebDriver dr = new ChromeDriver();
dr.get("https://computer.howstuffworks.com/web-page.htm");
dr.manage().window().maximize();
dr.navigate().back();
dr.navigate().refresh();
}
}
输出

在上面的例子中,我们使用了selenium框架中的refresh()方法,这里我导入了所有的selenium导入类和相应的驱动,比如web驱动。在这里,我首先使用System.setProperty()添加了chrome驱动,并创建了web驱动的实例,使用内置方法调用用户输入并在输出控制台显示。如果应用程序有很多模块,而且每个模块都有自己的标签元素和内容,这些都是基于网络的应用程序,那么在加载网页的时候就会同时调用navigate()和refresh()。此外,我们还可能包括一些用户或定制的层叠样式表,供互动用户使用。
例子#2
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class New {
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Kripya-PC\\Downloads\\chromedriver_win32 (1)\\chromedriver.exe");
WebDriver dr = new ChromeDriver();
dr.get("https://www.facebook.com/");
dr.findElement(By.id("email")).sendKeys("ramansiva57@gmail.com");
dr.manage().window().maximize();
dr.navigate().back();
dr.navigate().refresh();
}
}
输出


在上面的例子中,我们使用了和前面的例子一样的方法,这里我使用了facebook.com作为getCurrentURL()方法。在导入chrome驱动和其他所需的包与相应的类和它的默认方法后,要用所需的时间间隔来处理。在这里,我在相应的文本框中使用了一些用户输入,并指定了 "email "这样的id,然后我们输入了ramansiva57@gmail.com",然后我们调用了windows()、maximize()、back()、refresh()等默认方法,这些默认方法是由单个标签元素及其引用处理。
总结
selenium有n个网络驱动,用于为用户定义的应用程序导入所需的包。这样,我们就可以使用默认的类和方法来处理用户数据,并在浏览页面时穿越应用程序,它可能会有变化,并输入自动刷新功能,以确保用户数据的安全。