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 中可用的非常有用的方法,可根據需要控制瀏覽器。