WebDriver 中的浏览器方法
WebDriver,用于测试的主要界面,代表理想化的 Web 浏览器。本类中的方法分为三类:
- 控制浏览器本身
- 选择 WebElements
- 调试辅助工具
关键方法是 get(String)
,用于加载新的 Web 页面,以及类似于 findElement(By)
的各种方法,用于查找 WebElements。在这篇文章中,我们将学习浏览器控制方法。得到
void get(java.lang.String url)
在当前浏览器窗口中加载新网页。这是使用 HTTP GET 操作完成的,该方法将阻塞,直到加载完成。最好等到此超时结束,因为如果在测试执行期间底层页面发生更改,将来针对此接口的调用结果将针对新加载的页面。用法
//Initialising driver
WebDriver driver = new FirefoxDriver();
//setting timeout for page load
driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);
//Call Url in get method
driver.get("https://www.google.com");
//or
driver.get("https://seleniumhq.org");
getCurrentUrl
java.lang.String getCurrentUrl()
获取表示浏览器正在查看的当前 URL 的字符串。它返回当前在浏览器中加载的页面的 URL。
用法
//Getting current url loaded in browser & comparing with expected url
String pageURL = driver.getCurrentUrl();
Assert.assertEquals(pageURL, "https://www.google.com");
getTitle
java.lang.String getTitle()
它返回当前页面的标题,前导和尾随空格被剥离,如果尚未设置,则返回 null。
用法
//Getting current page title loaded in browser & comparing with expected title
String pageTitle = driver.getTitle();
Assert.assertEquals(pageTitle, "Google");
getPageSource
java.lang.String getPageSource()
获取上次加载页面的来源。如果页面在加载后已被修改(例如,通过 Javascript),则无法保证返回的文本是已修改页面的文本。
用法
//get the current page source
String pageSource = driver.getPageSource();
关
void close()
关闭当前窗口,如果它是当前打开的最后一个窗口,则退出浏览器。如果使用该驱动程序实例打开了多个窗口,则此方法将关闭当前焦点在其上的窗口。
用法
//Close the current window
driver.close();
放弃
void quit()
退出此驱动程序,关闭每个关联的窗口。调用此方法后,我们不能使用任何其他方法使用相同的驱动程序实例。
用法
//Quit the current driver session / close all windows associated with driver
driver.quit();
这些都是 Selenium 2.0 中可用的非常有用的方法,可根据需要控制浏览器。