您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium并行啟動多個(gè)瀏覽器
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2014/11/4 13:54:30 ] 推薦標(biāo)簽:Selenium java 命令

  快速上手
  如果你對 Selenium 自動化測試已經(jīng)非常熟悉,你僅僅需要一個(gè)快速上手來使程序運(yùn)行起來。本章節(jié)的內(nèi)容能滿足不同的技術(shù)層次,但是如果你僅僅需要一個(gè)可以快速上手的指引,那么顯得有點(diǎn)多。如果是這樣,你可以參考 Selenium Wiki 的相關(guān)文章。
  什么是 Selenium-Grid ?
  Selenium-Grid 允許你在多臺機(jī)器的多個(gè)瀏覽器上并行的進(jìn)行測試,也是說,你可以同時(shí)運(yùn)行多個(gè)測試。本質(zhì)上來說是,Selenium-Grid 支持分布式的測試執(zhí)行。它可以讓你的測試在一個(gè)分布式的執(zhí)行環(huán)境中運(yùn)行。
  何時(shí)需要使用
  通常,以下兩種情況你都會需要使用 Selenium-Grid。
  在多個(gè)瀏覽器中運(yùn)行測試,在多個(gè)版本的瀏覽器中進(jìn)行測試,或在不同操作系統(tǒng)的瀏覽器中進(jìn)行測試。
  減少測試運(yùn)行時(shí)間。
  Selenium-Grid 通過使用多臺機(jī)器并行地運(yùn)行測試來加速測試的執(zhí)行過程。例如,如果你有一個(gè)包含100個(gè)測試用例的測試套件,你使用 Selenium-Grid 支持4臺不同的機(jī)器(虛擬機(jī)或?qū)嶓w機(jī)均可)來運(yùn)行那些測試,同僅使用一臺機(jī)器相比,你的測試所需要的運(yùn)行時(shí)間大致為其 1/4。對于大型的測試套件和那些會進(jìn)行大量數(shù)據(jù)校驗(yàn)的需要長時(shí)間運(yùn)行的測試套件來說,這將節(jié)約很多時(shí)間。有些測試套件可能要運(yùn)行好幾小時(shí)。另一個(gè)需要縮短套件運(yùn)行時(shí)間的原因是開發(fā)者檢入(check-in)AUT 代碼后,需要縮短測試的運(yùn)行周期。越來越多的團(tuán)隊(duì)使用敏捷開發(fā),相比整夜整夜的等待測試通過,他們希望盡快地看到測試反饋。
  Selenium-Grid 也可以用于支持多執(zhí)行環(huán)境的測試運(yùn)行,典型的,同時(shí)在多個(gè)不同的瀏覽器中運(yùn)行。例如,Grid 的虛擬機(jī)可以安裝測試必須的各種瀏覽器。于是,機(jī)器 1 上有 ie8,機(jī)器 2 上有 ie9,機(jī)器 3 上有新版的 chrome,而機(jī)器 4 上有新版的 firefox。當(dāng)測試套件運(yùn)行時(shí),Selenium-Grid 可以使測試在指定的瀏覽器中運(yùn)行,并且接收每個(gè)瀏覽器的運(yùn)行結(jié)果。
  另外,我們可以擁有一個(gè)裝有多個(gè)類型和版本都一樣的瀏覽器 Grid。例如,一個(gè) Grid 擁有 4 臺機(jī)器,每臺機(jī)器可以運(yùn)行 3 個(gè) firefox 12 實(shí)例,形成一個(gè) firefox 的服務(wù)農(nóng)場。當(dāng)測試套件運(yùn)行時(shí),每個(gè)傳遞給 Selenium-Grid 的測試都被指派給下一個(gè)可用的 firefox 實(shí)例。通過這種方式,我們可以使得同時(shí)有 12 個(gè)測試在并行的運(yùn)行以完成測試,顯著地縮短了測試完成需要的時(shí)間。
  Selenium-Grid 非常靈活。以上兩個(gè)例子可以聯(lián)合起來使用,這樣可以可以使得不同類型和版本的瀏覽器有多個(gè)可運(yùn)行實(shí)例。使用這樣的配置,既并行地執(zhí)行測試,同時(shí)又可以測試多個(gè)瀏覽器類型和版本。
  Selenium-Grid 2.0
  Selenium-Grid 2.0 是在編寫本文時(shí)(5/26/2012)已發(fā)布的新版本。它同版本 1 有很多不同之處。在 2.0 中,Selenium-Grid 和 Selenium-RC 服務(wù)端進(jìn)行了合并,F(xiàn)在,你僅需要下載一個(gè) jar 包可以獲得它們。
  Selenium-Grid 1.0
  版本 1 是 Selenium-Grid 的第一個(gè)發(fā)布版本。如果你是一個(gè) Selenium-Grid 新手,你應(yīng)該選擇版本 2 。新版本已經(jīng)在原有基礎(chǔ)上進(jìn)行了更新,頁增加了一些新特性,并且支持 Selenium-WebDriver。一些老的系統(tǒng)可能仍然在使用版本 1.關(guān)于 Selenium-Grid 版本 1 的信息可以參考 Selenium-Grid website
  Selenium-Grid 的 Hub 和 Nodes 是如何工作的?
  Grid 由一個(gè)中心和一到多個(gè)節(jié)點(diǎn)組成。兩者都是通過 selenium-server.jar 啟動。在接下來的章節(jié)中,我們列出了一些例子。
  中心接收要執(zhí)行的測試信息,包括在哪些平臺和瀏覽器執(zhí)行等。它知道每個(gè)注冊了的節(jié)點(diǎn)的配置。根據(jù)測試信息,它會選擇符合需求的節(jié)點(diǎn)進(jìn)行測試。一旦選定了一個(gè)節(jié)點(diǎn),測試腳本會初始化 Selenium 命令,并且由重心發(fā)送給選定的要運(yùn)行測試的節(jié)點(diǎn)。這個(gè)節(jié)點(diǎn)會啟動瀏覽器,然后在瀏覽器中執(zhí)行這個(gè) AUT 的 Selenium 命令。
  我們提供了一些圖標(biāo)來演示其原理。第二張圖標(biāo)是用以說明 Selenium-Grid 1 的,版本 2 也適用并且對于我們的描述是一個(gè)很好的說明。的區(qū)別在于相關(guān)術(shù)語。使用“Selenium-Grid 節(jié)點(diǎn)”替換“Selenium Remote Control”即符合我們對 Selenium-Grid 2 的描述。
  下載
  下載過程很簡單。從 SeleniumHq 站點(diǎn)的下載頁面下載 Selenium-Server jar 包。你需要的鏈接在“Selenium-Server (以前是 Selenium-RC)”章節(jié)中。
  將它存放到任意文件夾中。你需要確保機(jī)器上正確的安裝了 java。如果 java 沒有正常運(yùn)行,檢查你系統(tǒng)的 path 變量是否包含了 java.exe 的路徑。
  啟動 Selenium-Grid
  由于節(jié)點(diǎn)對中心有依賴,所以你通常需要先啟動一個(gè)中心。這也不是必須的,因?yàn)楣?jié)點(diǎn)可以識別其中心是否已經(jīng)啟動,反之亦然。作為教程,我們建議你先啟動中心,否則會顯示一些錯(cuò)誤信息,你應(yīng)該不會想在第一次使用 Selenium-Grid 的時(shí)候看到它們。

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd