Selenium 是一種 Web 應用的自動(dòng)測試工具,通過(guò)模擬用戶(hù)對 Web 頁(yè)面的各種操作,可以精確重現軟件測試人員編寫(xiě)的 Test Cases 步驟。Selenium 包含三個(gè)工具:Selenium-IDE,Selenium-RC 以及 Selenium-Core。其中,Selenium-Core 是驅動(dòng) Selenium 工作的核心部分,作為一個(gè)用 JavaScript 編寫(xiě)的測試引擎,它可以操作 Web 頁(yè)面上的各種元素,諸如:點(diǎn)擊按鈕、輸入文本框,以及斷言 Web 頁(yè)面上存在某些文本與 Web 元素等。
Selenium-IDE 是一個(gè) Firefox 插件,能夠錄制回放用戶(hù)在 Firefox 中的行為,并把所記錄的 Selenese (Selenium Commands) 轉化為 Java/C#/Python/Ruby 等語(yǔ)言,在 Selenium-RC 中修改復用。對于較為復雜的 Test Cases,Selenium-IDE 的功能有限,往往用它錄制大致的步驟,再轉化為測試人員熟悉的編程語(yǔ)言,在此基礎上完善,形成更為強大且靈活的 Selenium-RC Test Cases。
Selenium-RC(Selenium Remote Control)在 Web 瀏覽器與需要測試的 Web 應用間架設代理服務(wù)器(Selenium Server),使得 JavaScript 引擎與被測 Web 應用同源,繞開(kāi)同源策略的限制(Same Origin Policy),進(jìn)而取得對 Web 頁(yè)面進(jìn)行各種操作的權限。
Selenium IDE
Selenium-IDE 是一個(gè) Firefox 插件,由"Command(命令/動(dòng)作)" "Target(目標/對象)"及其"Value(值)"構成三段式腳本語(yǔ)言(Selenese)......
Selenium Core
Selenium Core是一款可以一次組織大量的測試用例來(lái)進(jìn)行Web軟件的功能或系統測試的強大工具......
Selenium RC
Selenium RC支持Java C# php python Ruby Pear等多種編程語(yǔ)言。其中任務(wù)一種語(yǔ)言都可以由Selenium IDE的三段測試腳本轉換過(guò)來(lái)。
能把Selenium RC腳本和JUnit單元測試結合起來(lái),既能涵蓋功能測試,又能涵蓋數據或后臺Java類(lèi)測試,從而構成一個(gè)完整的Web應該測試解決方案。
1.安裝與入門(mén)
首先要安裝JRE,從http://seleniumhq.org/download/下載Selenium RC安裝包,解壓后在E:\selenium\selenium-remote-control-1.0.3\selenium-server-1.0.3目錄下存放了相關(guān)的jar包。
2.啟動(dòng)Selenium RC Server
啟動(dòng)Selenium RC服務(wù),啟動(dòng)cmd模式,輸入: java -jar selenium-server.jar -interactive。
3.Selenium RC Server的操作
Selenium RC Server的操作,在cmd模式下輸入:c:\>cmd=getNewBrowserSession&1=*firefox& 2=http://www.google.com,此時(shí)會(huì )打開(kāi)firefox進(jìn)入google.com主頁(yè)......
4.機理......
Selenium RC Server的操作,在cmd模式下輸入:c:\>cmd=getNewBrowserSession&1=*firefox& 2=http://www.google.com,此時(shí)會(huì )打開(kāi)firefox進(jìn)入google.com主頁(yè)。
5.HTTPS的配置
如要能夠運行HTTPS,須對IE進(jìn)行配置。FireFox已將證書(shū)打包入了配置文件中。為IE導入SSL證書(shū),在E:\selenium \selenium-remote-control-1.0.3\selenium-server-1.0.3\sslSupport中將證書(shū) cybervillainsCA.cer導入即可。最后在啟動(dòng)Selenium RC Server服務(wù)時(shí)可輸入:java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates來(lái)啟動(dòng)服務(wù)。
6.編寫(xiě)測試腳本
這里以PHP為例,可將Selenium-IDE錄制的腳本轉為php腳本。 通過(guò)java -jar selenium-server.jar -log c:\selenium.log -trustAllSSLCertificates啟動(dòng)服務(wù)。在cmd模式中輸入c:\>phpunit e:\selenium\selenium-remote-control-1.0.3\selenium-php-client-driver-1.0.1/GoogleTest.php運行php測試腳本。
7.如何與Junit集成......
Selenium Grid
Selenium Grid是Selenium的一個(gè)擴展,提供了一個(gè)類(lèi)似于網(wǎng)絡(luò )集線(xiàn)器(hub)的遠程測試控制器,能夠測試請求發(fā)送到若干個(gè)遠程機器的Selenium-RC上......
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/